MySQL là một trong những cơ sở dữ liệu quan hệ phổ biến nhất. Nó cho phép bạn lưu trữ dữ liệu trong các bảng và tạo mối quan hệ giữa các bảng đó. Để sử dụng MySQL, chạy như một máy chủ cơ sở dữ liệu, bạn sẽ cần viết mã để kết nối với nó
Hầu hết các ngôn ngữ lập trình như Python đều cung cấp hỗ trợ cho điều này. Trên thực tế, trong Python, có một số cách tiếp cận mà bạn có thể thực hiện, mỗi cách đều có những ưu điểm riêng
Chuẩn bị cấu hình MySQL của bạn
Để kết nối với cơ sở dữ liệu, bạn cần các giá trị sau
- Chủ nhà. vị trí của máy chủ MySQL, localhost nếu bạn đang chạy nó trên cùng một máy tính
- Người sử dụng. tên người dùng MySQL
- Mật khẩu. mật khẩu MySQL
- Tên cơ sở dữ liệu. tên của cơ sở dữ liệu bạn muốn kết nối với
Trước khi kết nối với cơ sở dữ liệu MySQL, hãy tạo một thư mục mới
mkdir python-mysql
Thiết lập môi trường ảo Python
Môi trường ảo Python cho phép bạn cài đặt các gói và chạy tập lệnh trong môi trường biệt lập. Khi bạn tạo một môi trường ảo, bạn có thể cài đặt các phiên bản Python và phần phụ thuộc Python bên trong môi trường đó. Bằng cách này, bạn tách biệt các phiên bản khác nhau và tránh các sự cố tương thích
Kết nối với MySQL bằng mysqlclient
Trình điều khiển mysqlclient là giao diện cho máy chủ cơ sở dữ liệu MySQL cung cấp API máy chủ cơ sở dữ liệu Python. Nó được viết bằng C
Chạy lệnh sau trong môi trường ảo để cài đặt mysqlclient
pip install mysqlclient
Nếu bạn đang sử dụng máy Linux, trước tiên hãy cài đặt các tiêu đề và thư viện phát triển Python 3 và MySQL
# Debian / Ubuntu
sudo apt-get install python3-dev default-libmysqlclient-dev build-essential
# Red Hat / CentOS
sudo yum install python3-devel mysql-devel
Trên Windows, bạn có thể cài đặt mysqlclient bằng tệp bánh xe nhị phân. Tải xuống tệp mysqlclient tương thích với nền tảng của bạn từ bộ sưu tập không chính thức của Christoph Gohlke. Sau đó, bạn có thể sử dụng tệp bánh xe đã tải xuống với pip để cài đặt mysqlclient như thế này
pip install c:\\mysqlclient‑1.3.13‑cp36‑cp36m‑win_amd64.whl
Sử dụng mã kết nối sau để kết nối với cơ sở dữ liệu MySQL sau khi cài đặt hoàn tất
import MySQLdb
connection = MySQLdb.connect[
host="localhost",
user="",
passwd="",
db=""
]
cursor = connection.cursor[]
cursor.execute["select database[];"]
db = cursor.fetchone[]
if db:
print["You're connected to database: ", db]
else:
print['Not connected.']
Trong chương trình này, bạn có
- mysqlclient đã nhập
- Đã tạo một đối tượng kết nối bằng MySQLdb. liên kết[]
- Đã chuyển chi tiết cấu hình cơ sở dữ liệu cho MySQLdb. liên kết[]
- Tạo một đối tượng con trỏ để tương tác với MySQL
- Đã sử dụng đối tượng con trỏ để tìm nạp phiên bản của cơ sở dữ liệu MySQL được kết nối
Hãy nhớ chuyển đổi các chi tiết cơ sở dữ liệu với của riêng bạn
Kết nối với MySQL bằng mysql-connector-python
mysql-connector-python là trình điều khiển kết nối chính thức được hỗ trợ bởi Oracle. Nó cũng được viết bằng Python thuần túy
Cài đặt nó qua pip để bắt đầu sử dụng nó
pip install mysql-connector-python
Kết nối với MySQL bằng mã kết nối sau
import mysql.connector
from mysql.connector import Error
connection = mysql.connector.connect[host="localhost",
user="",
passwd="",
db=""]
try:
if connection.is_connected[]:
cursor = connection.cursor[]
cursor.execute["select database[];"]
db = cursor.fetchone[]
print["You're connected to dtabase: ", db]
except Error as e:
print["Error while connecting to MySQL", e]
finally:
if connection.is_connected[]:
cursor.close[]
connection.close[]
print["MySQL connection is closed"]
Mã kết nối ở trên thực hiện tương tự như mã kết nối mysqlclient thực hiện
Khi bạn tạo đối tượng kết nối, bạn có thể tạo một con trỏ, sau đó bạn có thể sử dụng con trỏ này để thực hiện các truy vấn trên cơ sở dữ liệu
Chương trình kết nối này cũng sử dụng khối try…catch. Lớp Lỗi, từ mysql. trình kết nối, cho phép bạn nắm bắt các ngoại lệ được đưa ra khi kết nối với cơ sở dữ liệu. Điều này sẽ đơn giản hóa việc gỡ lỗi và khắc phục sự cố
Kết nối với MySQL bằng PyMySQL
Trình điều khiển kết nối PyMySQL là sự thay thế cho MySQLdb. Để sử dụng nó, bạn cần chạy Python 3. 7 trở lên và máy chủ MySQL của bạn phải là phiên bản 5. 7 hoặc mới hơn. Nếu bạn sử dụng MariaDB thì đó phải là phiên bản 10. 2 hoặc cao hơn. Bạn có thể tìm thấy các yêu cầu này trên trang Github của PyMySQL
Để cài đặt PyMySQL, hãy chạy lệnh sau
pip install PyMySQL
Kết nối với MySQL bằng PyMySQL bằng mã này
________số 8Khi bạn đã tạo kết nối và tạo đối tượng con trỏ, bạn có thể bắt đầu thực hiện các truy vấn SQL
Kết nối với MySQL bằng aiomysql
Trình điều khiển kết nối aiomysql giống như phiên bản không đồng bộ của PyMySQL. Nó cung cấp quyền truy cập vào cơ sở dữ liệu MySQL từ khung asyncio
Để sử dụng aiomysql, bạn cần Python 3. 7+ và PyMySQL được cài đặt trong môi trường phát triển của bạn
Chạy lệnh sau để cài đặt asyncio và aiomysql
pip install asyncio
pip install aiomysql
Với aiomysql, bạn có thể kết nối Python với MySQL bằng đối tượng kết nối cơ bản và sử dụng nhóm kết nối
Dưới đây là một ví dụ cho thấy cách kết nối với cơ sở dữ liệu MySQL bằng đối tượng kết nối
pip install mysqlclient
0Không giống như một đối tượng kết nối cơ sở dữ liệu, nhóm kết nối cho phép bạn sử dụng lại các kết nối cơ sở dữ liệu. Nó thực hiện điều này bằng cách duy trì một nhóm các kết nối mở và chỉ định chúng theo yêu cầu. Khi khách hàng yêu cầu kết nối, họ sẽ được chỉ định một kết nối từ nhóm. Khi máy khách đóng kết nối, kết nối sẽ quay trở lại nhóm
Mã cơ bản để kết nối thông qua một nhóm như bên dưới
pip install mysqlclient
1Chương trình này sẽ in phiên bản MySQL mà bạn đã kết nối khi chạy nó
Quản lý cơ sở dữ liệu PostgreSQL của bạn
Bài viết này đã chỉ cho bạn một số cách để bạn có thể kết nối ứng dụng Python với MySQL. Mỗi phương pháp này cho phép bạn tương tác và thực hiện các truy vấn trên cơ sở dữ liệu
Sau khi kết nối với cơ sở dữ liệu MySQL, bạn có thể thực hiện các truy vấn dữ liệu và thực hiện các giao dịch cơ sở dữ liệu. Bạn có thể tạo một ứng dụng Python, kết nối nó với MySQL và bắt đầu lưu trữ dữ liệu