win7 下 python 安装和使用 mysql
按照廖雪峰的教程执行下去,发现了一些问题,但这不代表教程本身有问题。出现问题的原因有很多,比如说,教程是在 Mac 平台下执行通过的,在其他的平台就有可能出现新问题。下面就 windows7 下 python 安装使用 mysql 的几个步骤上的差异作记录。
安装 MySQL
教程提供的安装地址 : MySQL Community Server 5.6.x。因为我本地使用的 xampp 集成开发环境,版本也是 5.6,所以没有重复安装。
在Windows上,安装时请选择 UTF-8 编码,以便正确地处理中文。
在 Mac 或 Linux 上,需要编辑 MySQL 的配置文件,把数据库默认的编码全部改为 UTF-8 。MySQL 的配置文件默认存放在/etc/my.cnf
或者/etc/mysql/my.cnf
:
[client]
default-character-set = utf8
[mysqld]
default-storage-engine = INNODB
character-set-server = utf8
collation-server = utf8_general_ci
原教程里说得很清楚,但我看成了 windows 上也要在配置文件中添加以上的有关 UTF-8 编码的配置。所以重启 mysql 就无情报错了。
安装 MySQL 驱动
主要还是使用 pip 指令。原教程第一推荐的安装指令为:
pip install mysql-connector-python --allow-external mysql-connector-python
其中的 --allow-external
特别强调要加上的,这个选项参数表示允许通过网络对外服务。但我在 windows 7 下执行,会提示 no such option: --allow-external
。尝试去掉这个参数,安装成功!
教程中的备用指令 pip install mysql-connector
,以及评论里说教程报错推荐使用的另一个包安装指令:pip install pymysql
,这两个都没有去试,但如果使用第一推荐的安装指令不能安装成功的话,不妨一试。
连接 MySQL 代码演示
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
# 导入 MySQL 驱动
import mysql.connector
# 注意把 password 设为你的 root 口令
conn = mysql.connector.connect(host='xx.xx.xx.xx', user='xx', password='xx', database='test')
cursor = conn.cursor()
# 创建 user 表
cursor.execute('create table user (id varchar(20) primary key, name varchar(20))')
# 插入一条记录
cursor.execute('insert into user (id,name) values (%s, %s)', ['1', 'Jason'])
print(cursor.rowcount)
# 提交事务
conn.commit()
cursor.close()
# 运行查询
cursor = conn.cursor()
cursor.execute('select * from user where id = %s', ('1',))
values = cursor.fetchall()
print(values)
# 关闭 cursor 和 connection
cursor.close()
conn.close()
本地测试不需要 connect()
方法的 host
参数,而连接远程 MySQL 服务器时,最好先测试一下域名、账号、地址是否能够连接通,推荐使用 navicat。
当前页面是本站的「Google AMP」版。查看和发表评论请点击:完整版 »