Người dùng có thể thực thi lệnh nào để cài đặt MySQLdb?

Python cung cấp một số cách để kết nối với cơ sở dữ liệu MySQL và xử lý dữ liệu. Bài viết này mô tả ba phương pháp

Cơ sở dữ liệu MySQL và người dùng phải tồn tại trước khi bạn có thể sử dụng bất kỳ phương pháp nào sau đây. Để biết thông tin về cách quản lý cơ sở dữ liệu MySQL bằng cPanel, vui lòng xem bài viết này

Kết nối với MySQL bằng Python

Trước khi bạn có thể truy cập cơ sở dữ liệu MySQL bằng Python, bạn phải cài đặt một (hoặc nhiều) gói sau trong môi trường ảo

  • mysqlclient. Gói này chứa mô-đun MySQLdb. Nó được viết bằng C và là một trong những gói Python được sử dụng phổ biến nhất cho MySQL
  • mysql-connector-python. Gói này chứa mysql. mô-đun kết nối. Nó được viết hoàn toàn bằng Python
  • PyMySQL. Gói này chứa mô-đun pymysql. Nó được viết hoàn toàn bằng Python

Cả ba gói này đều sử dụng API cơ sở dữ liệu SQL di động của Python. Điều này có nghĩa là nếu bạn chuyển từ mô-đun này sang mô-đun khác, bạn có thể sử dụng lại gần như toàn bộ mã hiện có của mình (mẫu mã bên dưới trình bày cách thực hiện việc này)

Thiết lập môi trường ảo Python và cài đặt gói MySQL

Để thiết lập môi trường ảo Python và cài đặt gói MySQL, hãy làm theo các bước sau

  1. Đăng nhập vào tài khoản của bạn bằng SSH
  2. Để tạo một môi trường ảo, gõ các lệnh sau.
    cd ~
    virtualenv sqlenv
    

    • Lệnh virtualenv tạo một môi trường ảo có tên là sqlenv và các lệnh tiếp theo trong thủ tục này giả định rằng môi trường có tên là sqlenv. Bạn có thể sử dụng bất kỳ tên môi trường nào bạn muốn, nhưng đảm bảo rằng bạn thay thế tất cả các lần xuất hiện của sqlenv bằng tên môi trường của riêng bạn
    • Nếu bạn đang chạy phiên bản Python thay thế (ví dụ: bạn đã định cấu hình thủ công phiên bản Python mới hơn cho tài khoản của mình như được mô tả trong bài viết này), thì bạn có thể chỉ định phiên bản đó cho môi trường ảo. Ví dụ: để cài đặt phiên bản Python 3 do người dùng định cấu hình. 8 trong môi trường ảo, bạn có thể sử dụng lệnh sau.
      virtualenv -p /home/username/bin/python3.8 sqlenv
      

  3. Để kích hoạt môi trường ảo, gõ lệnh sau

    source sqlenv/bin/activate

    Dấu nhắc lệnh hiện bắt đầu bằng (sqlenv) để cho biết bạn đang làm việc trong môi trường ảo Python. Tất cả các lệnh sau trong quy trình này giả định rằng bạn đang làm việc trong môi trường ảo. Nếu bạn đăng xuất khỏi phiên SSH của mình (hoặc hủy kích hoạt môi trường ảo bằng cách sử dụng lệnh hủy kích hoạt), hãy đảm bảo bạn kích hoạt lại môi trường ảo trước khi làm theo các bước bên dưới và chạy mã mẫu

  4. Để cập nhật pip trong môi trường ảo, gõ lệnh sau

    pip install -U pip
  5. Nhập lệnh cho gói bạn muốn cài đặt

    • Để cài đặt gói mysqlclient, hãy nhập lệnh sau.
      pip install mysqlclient
    • Để cài đặt gói mysql-connector-python, gõ lệnh sau

      pip install mysql-connector-python
    • Để cài đặt gói pymysql, gõ lệnh sau

      pip install pymysql
mẫu mã

Sau khi bạn cài đặt gói MySQL trong môi trường ảo, bạn đã sẵn sàng làm việc với cơ sở dữ liệu thực tế. Mã Python mẫu sau đây trình bày cách thực hiện việc này, cũng như việc chuyển đổi giữa các triển khai gói SQL khác nhau dễ dàng như thế nào. Mã mẫu hoạt động với Python 2. 7 và Trăn 3. x

Trong mã của riêng bạn, hãy thay thế tên người dùng bằng tên người dùng cơ sở dữ liệu MySQL, mật khẩu bằng mật khẩu của người dùng cơ sở dữ liệu và dbname bằng tên cơ sở dữ liệu

#!/usr/bin/python

from __future__ import print_function

hostname = 'localhost'
username = 'username'
password = 'password'
database = 'dbname'

# Simple routine to run a query on a database and print the results:
def doQuery( conn ) :
    cur = conn.cursor()

    cur.execute( "SELECT fname, lname FROM employee" )

    for firstname, lastname in cur.fetchall() :
        print( firstname, lastname )


print( "Using mysqlclient (MySQLdb):" )
import MySQLdb
myConnection = MySQLdb.connect( host=hostname, user=username, passwd=password, db=database )
doQuery( myConnection )
myConnection.close()

print( "Using mysql.connector:" )
import mysql.connector
myConnection = mysql.connector.connect( host=hostname, user=username, passwd=password, db=database )
doQuery( myConnection )
myConnection.close()

print( "Using pymysql:" )
import pymysql
myConnection = pymysql.connect( host=hostname, user=username, passwd=password, db=database )
doQuery( myConnection )
myConnection.close()

Ví dụ này tạo một loạt các đối tượng Kết nối mở cùng một cơ sở dữ liệu bằng các mô-đun MySQL khác nhau. Vì cả ba mô-đun MySQL đều sử dụng giao diện API cơ sở dữ liệu SQL di động nên chúng có thể sử dụng mã trong hàm doQuery() mà không cần sửa đổi gì

Khi bạn có một đối tượng Kết nối được liên kết với cơ sở dữ liệu, bạn có thể tạo một đối tượng Con trỏ. Đối tượng Cursor cho phép bạn chạy phương thức exec(), từ đó cho phép bạn chạy các câu lệnh SQL thô (trong trường hợp này là một truy vấn CHỌN trên một bảng có tên là employee)

Như bạn có thể thấy, API cơ sở dữ liệu SQL di động của Python giúp dễ dàng chuyển đổi giữa các mô-đun MySQL trong mã của bạn. Trong mẫu ở trên, các thay đổi mã duy nhất cần thiết để sử dụng một mô-đun khác là đối với các câu lệnh nhập và kết nối

Người dùng có thể thực thi lệnh nào để cài đặt Mysqldb?

Khởi chạy ứng dụng khách dòng lệnh MySQL. Để khởi chạy ứng dụng khách, hãy nhập lệnh sau vào cửa sổ Dấu nhắc Lệnh. mysql -u root -p . Tùy chọn -p chỉ cần thiết nếu mật khẩu gốc được xác định cho MySQL. Nhập mật khẩu khi được nhắc.

Các lệnh MySQL được thực thi ở đâu?

Cách sử dụng Máy khách dòng lệnh MySQL .
Mở dấu nhắc lệnh
Điều hướng đến thư mục bin. Ví dụ. CDC. \Tệp chương trình\MySQL\MySQL Server 8. 0\bin
Chạy lệnh mysql -u root -p
Nhập mật khẩu

Lệnh nào được sử dụng để kết nối với MySQL?

Lệnh \connect dùng để kết nối với Máy chủ MySQL. Xem Phần 4. 3, “Kết nối vỏ MySQL”. Nếu mật khẩu được yêu cầu, bạn sẽ được nhắc nhập mật khẩu.

Làm cách nào bạn có thể khởi động công cụ dòng lệnh MySQL từ dòng lệnh cho người dùng root bằng mật khẩu?

Nhập mysql. exe -uroot -p và MySQL sẽ khởi chạy bằng người dùng root. MySQL sẽ nhắc bạn nhập mật khẩu của bạn. Nhập mật khẩu từ tài khoản người dùng mà bạn đã chỉ định bằng thẻ –u và bạn sẽ kết nối với máy chủ MySQL.