mac使用brew安装mysql
1 先查看mac上边有没有安装brew;
brew -v 可查看brew版本
没有安装可先安装brew:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
2 检查brew能否正常工作:brew doctor
3 更新brew包:brew update
4 安装mysql:brew insatll mysql
5 后台启动mysql:brew services start mysql // 重启:brew services restart mysql
6 启动MySQL服务:mysql.server start // 需要权限时可以用 sodu mysql.server start 启动
7 设置密码:mysql_secure_installation
8 连接mysql:mysql -uroot -p<you password> 例子:mysql -uroot -p123456 也可以输入 mysql -uroot -p 回车输入密码
解决办法:
步骤:报错意为“需要mysqlclient 1.3.13或更高版本;您有0.9.3版本”,所以下载更高版本的mysqlclient(大于1.3.13版本)
Django连接MySQL时默认使用MySQLdb驱动,但MySQLdb不支持Python3,因此这里将MySQL驱动设置为pymysql。
首先pip安装pymysql:
-
#通过pip安装pymysql
-
pip install pymysql
然后在工程的__init__.py文件中写入如下代码:
-
#__init__.py
-
import pymysql
-
pymysql.install_as_MySQLdb()
方法一:django版本降至2.14版本以下即可。
如果想继续使用django2.2请使用方法二:
方法二:找到python文件下的django文件>db文件>backends>mysql>base.py
打开后将如下代码注释:
-
if version < (1, 3, 13):
-
raise ImproperlyConfigured('mysqlclient 1.3.13 or newer is required; you have %s.' % Database.__version__)
注释好了之后重新启动django服务器:
python manage.py runserver
但是会报一个错误,别着急:
报错信息:
AttributeError: 'str' object has no attribute 'decode'
解决办法:
找到python文件下的django文件>db文件>backends>mysql>operations.py
打开后ctrl+f搜索query.decode
将decode改为encode即可。