Python:Connector/Python数据库连接参数详细介绍
最近更新时间 2020-11-28 11:11:05
MySQL 官方提供了 Python 驱动程序 Connector/Python。其中包括 mysql.connector.connect() 方法和 mysql.connector.MySQLConnection() 类可用于连接数据库。
安装 Connector/Python
pip install mysql-connector-python
连接数据库
import mysql.connector
cnx = mysql.connector.connect(user='scott', password='password',
                              host='127.0.0.1',
                              database='employees')
cnx.close()
表格:Connector/Python 详细连接参数
| 参数名称 | 默认值 | 描述 | 
|---|---|---|
| user | 数据库服务器的用户名。 | |
| password | 数据库服务器的密码。 | |
| database | 数据库名称。 | |
| host | 127.0.0.1 | 数据库服务器的 IP 地址或主机名称。 | 
| port | 3306 | 数据库服务器的 TCP/IP 端口,必须时整数。 | 
| unix_socket | Unix socket 文件地址。 | |
| auth_plugin | 认证插件。 | |
| use_unicode | True | 是否使用 Unicode。 | 
| charset | utf8 | 数据库编码。 | 
| collation | utf8mb4_general_ai_ci | 数据库字符编码集,主要用于字段排序和存储。 | 
| autocommit | False | 是否自动提交事务。 | 
| time_zone | 设置连接时的时区。 | |
| sql_mode | 设置连接时的模式。 | |
| get_warnings | False | 是否获取警告。 | 
| raise_on_warnings | False | 警告时是否抛出异常。 | 
| connection_timeout | TCP 或 Unix socket 连接的超时时间。 | |
| client_flags | 客户端标志。 | |
| buffered | False | 执行查询语句后时间立即获取数据或缓存。 | 
| raw | False | 是否转换 MySQL 结果为 Python 类型,默认不转换。 | 
| consume_results | False | 是否自动读取结果集。 | 
| ssl_ca | SSL 连接时 CA 认证。 | |
| ssl_cert | SSL 连接时证书。 | |
| ssl_disabled | False | 使用 SSL/TLS 时禁用。 | 
| ssl_key | SSL 密钥。 | |
| ssl_verify_cert | False | 设置为 True 时会检测 SSL 证书。 | 
| ssl_verify_identity | False | CA 检测。 | 
| force_ipv6 | False | 如果设置为 True,优先使用 IPv6,默认优先使用 Ipv4。 | 
| dsn | 不再支持、使用时会抛 NotSupportedError 异常。 | |
| pool_name | 数据库连接池名称。 | |
| pool_size | 5 | 数据库连接池大小,值必须大于 0 小于等于 pooling.CNX_POOL_MAXSIZE 设置的值,默认 32。 | 
| pool_reset_session | True | 是否重置数据库连接池。 | 
| compress | False | 客户端和服务器之间是否使用压缩协议。 | 
| converter_class | 转换类名称。 | |
| failover | 服务故障转换顺序。 | |
| option_files | 可选文件路径。 | |
| option_groups | ['client', 'connector_python'] | 可选文件组。 | 
| allow_local_infile | True | 是否使用(LOAD DATA LOCAL INFILE)。 | 
| use_pure | False | 8.0.11 后默认 False,更早的版本默认 True。 |