在Ubuntu 19.10 Eoan Ermine上使用MariaDB Connector/Python
总结
-
Ubuntu 19.10 Eoan Ermine に MariaDB Connector/Python をインストールする
- Ubuntu 19.10 Eoan Ermine に MariaDB Connector/Python をインストールする
- Python による MariaDB Connector/Python を使用したサンプルコードを示す
这次的环境
-
Ubuntu 19.10 Eoan Ermine
- Ubuntu 19.10 Eoan Ermine
-
- MariaDB 10.3.22
-
- Python 3.7.5
- MariaDB Connector/Python 0.9.54-beta
MariaDB Connector/Python 是什么?MariaDB Connector/Python 是用于访问MariaDB和MySQL的MariaDB官方库。它符合Python DB API 2.0(PEP-249)规范。
Python – MariaDB 知识库
MariaDB Connector/Python 允许使用 Python 程序访问 MariaDB 和 MySQL 数据库,使用与 Python DB API 2.0(PEP-249)兼容的 API。它是用 C 编写的,并使用 MariaDB Connector/C 客户端库进行客户端服务器通信。
截至2020年3月6日,MariaDB Connector/Python仍处于测试版状态。
MariaDB Connector/Python 0.9.54-beta 发布说明- MariaDB 知识库
这是MariaDB Connector/Python的beta版本,仅供测试使用,并不适用于生产环境。
请勿在生产环境中使用beta版本!
MariaDB Connector/Python 0.9.52 Alpha 发布
以前一直都是使用MySQL Connector,但是现在,就像其他编程语言一样,MariaDB Corporation正式提供了Connector。
MariaDB Connector/Python 0.9.52 Alpha 发布
使用方法与现有的MySQL Connector相同。
安装pip3命令为了安装MariaDB Connector/Python,需要提前安装pip3。
$ sudo apt install python3-pip
$ sudo apt install python3-pip
据说Ubuntu的pip3命令经过了独特的定制。
pip – Python 日本
Debian软件包的pip命令(python3-pip / python-pip)经过了特定的修改,如果以普通用户身份执行pip install命令,它会自动加上–user选项。
安装MariaDB Connector/Python使用pip3命令安装MariaDB Connector/Python的mariadb包。
$ pip3 install --pre mariadb
$ pip3 install --pre mariadb
如果在安装过程中出现以下错误,那么说明 mariadb_config 不完整。
/bin/sh: 1: mariadb_config: not found
Traceback (most recent call last):
File "<string>", line 1, in <module>
File "/tmp/pip-install-o123mtwk/mariadb/setup.py", line 24, in <module>
cfg = get_config(options)
File "/tmp/pip-install-o123mtwk/mariadb/mariadb_posix.py", line 49, in get_config
cc_version = mariadb_config(config_prg, "cc_version")
File "/tmp/pip-install-o123mtwk/mariadb/mariadb_posix.py", line 27, in mariadb_config
"mariadb_config not found.\nPlease make sure, that MariaDB Connector/C is installed on your system, edit the configuration file 'site.cfg' and set the 'mariadb_config'\noption, which should point to the mariadb_config utility.")
OSError: mariadb_config not found.
Please make sure, that MariaDB Connector/C is installed on your system, edit the configuration file 'site.cfg' and set the 'mariadb_config'
option, which should point to the mariadb_config utility.
----------------------------------------
Command "python setup.py egg_info" failed with error code 1 in /tmp/pip-install-o123mtwk/mariadb/
在安装 Ubuntu 的 libmariadb-dev 包(其中包含了 mariadb_config)后,再次使用 pip3 命令安装 mariadb 包。
$ sudo apt install libmariadb-dev
$ pip3 install --pre mariadb
Ubuntu – eoan的libmariadb-dev软件包的详细信息
MariaDB数据库开发文件
Ubuntu—软件包文件列表:libmariadb-dev/eoan/amd64
/usr/bin/mariadb_config 可以被转述为:
马里亚DB配置文件
MariaDB 连接器/Python 的文档MariaDB的文件不太好理解。根据需要,还可以参考GitHub上的源代码和MySQL Connector/Python的文档。
-
Home · mariadb-corporation/mariadb-connector-python Wiki
- Home · mariadb-corporation/mariadb-connector-python Wiki
-
- MariaDB Connector/Python 1.0 — MariaDB Enterprise documentation
-
- mariadb-corporation/mariadb-connector-python: MariaDB Connector/Python
-
- MySQL :: MySQL Connector/Python Developer Guide
- MySQL :: MySQL Connector/Python Developer Guide :: 10 Connector/Python API Reference
插入,选择,更新的示例代码。
我們可以運行以下類似的 Python 腳本。
import time
import mariadb
# connect db
conn = mariadb.connect(host="localhost",
user="your_app",
password="your_app_password",
database="test_db")
cursor = conn.cursor(named_tuple=True)
# insert
insert_sql = "INSERT INTO test_table (name, created_at) VALUES (%s, %s)"
name = "寿司ビール??????文字化けしないで"
created_at = mariadb.TimestampFromTicks(time.time())
cursor.execute(insert_sql, (name, created_at))
conn.commit()
# select
select_sql = "SELECT id, name, created_at FROM test_table"
cursor.execute(select_sql)
for row in cursor:
print(f"{row.id}: {row.name} ({row.created_at})")
target_id = row.id
# update
update_sql = "UPDATE test_table set name=%s WHERE id=%s"
cursor.execute(update_sql, ("Alice", target_id))
conn.commit()
conn.close()
请查阅相关资料
-
Python – MariaDB Knowledge Base
import time
import mariadb
# connect db
conn = mariadb.connect(host="localhost",
user="your_app",
password="your_app_password",
database="test_db")
cursor = conn.cursor(named_tuple=True)
# insert
insert_sql = "INSERT INTO test_table (name, created_at) VALUES (%s, %s)"
name = "寿司ビール??????文字化けしないで"
created_at = mariadb.TimestampFromTicks(time.time())
cursor.execute(insert_sql, (name, created_at))
conn.commit()
# select
select_sql = "SELECT id, name, created_at FROM test_table"
cursor.execute(select_sql)
for row in cursor:
print(f"{row.id}: {row.name} ({row.created_at})")
target_id = row.id
# update
update_sql = "UPDATE test_table set name=%s WHERE id=%s"
cursor.execute(update_sql, ("Alice", target_id))
conn.commit()
conn.close()
-
- Python – MariaDB Knowledge Base
- mariadb · PyPI