环境:Mac OS X, Anaconda3
一.安装Mysql
1.从官网下载dmg文件安装,全部默认选择安装完成。
2.修改默认密码。
3.添加路径。
4.很重要的一步,被坑很久。为了使mysql为utf8编码,需在/etc文件夹添加my.cnf文件。网上很多教程里提到的从其他文件复制过来无法实现(在support-files文件夹根本无所述文件)。而my.cnf文件按照搜到的很多教程里添加上去的内容是错误的,写上之后会由于socket文件问题无法登陆。按照如下格式添加即可:
# For advice on how to change settings please see
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
character-set-server=utf8
[mysqldump]
user=root
password=root
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
# innodb_buffer_pool_size = 128M
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
# log_bin
# These are commonly set, remove the # and set as required.
# basedir = .....
# datadir = .....
# port = .....
# server_id = .....
# socket = .....
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
# join_buffer_size = 128M
# sort_buffer_size = 2M
# read_rnd_buffer_size = 2M
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
注意本步需在mysql服务关掉的情况下操作!
二.与Python连接
1.conda install pymysql
2.import pymysql即可不报错。
注意在修改成utf格式后,写代码时需加上charset="utf8",即可正常在数据库中插入中文。
db= pymysql.connect(host="localhost",user="root", password="root",db="scrapyDB",port=3306,charset="utf8")