django 配置mysql 数据库
在centos 7 下安装mysql
安装
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm rpm -ivh mysql-community-release-el7-5.noarch.rpm yum install mysql-community-server -y
配置检查指令
systemctl start mysqld #启动mysql 服务 #设置mysql开机启动 systemctl enable mysqld systemctl daemon-reload #查找root密码 #mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改: grep 'temporary password' /var/log/mysqld.log #登录mysql,密码为刚才查找的密码 mysql -u root -p # 启动重启 systemctl start mysqld#启动mysql 服务 service mysqld restart # 重启服务
远程连接mysql数据库
错误信息: SQL Error (1130): Host ‘X.X.X.XX’ is not allowed to connect to this MySQL server
说明所连接的用户帐号没有远程连接的权限,只能在本机(localhost)登录。
需更改 mysql 数据库里的 user表里的 host项
把localhost改称%
登录mysql服务器,执行以下命令
mysql -u root -p
mysql>grant all privileges on *.* to 'root'@'183.239.156.162' identified by '密码' with grant option;
mysql>use mysql;
mysql>update user set host = ‘%’ where user =’root’;
mysql>flush privileges;
mysql>quit
django-->项目名-->settings.py
django 版本 2.2.1
安装mysql 驱动
pip install pymysql
配置项目 __init__.py
#!/usr/bin/python3 import pymysql pymysql.install_as_MySQLdb()
DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'HOST': '127.0.0.1', 'PORT': '3306', 'NAME': 'autoManagement', 'USER': 'root', 'PASSWORD': '123456', # 'OPTIONS': { # 'init_command': "SET sql_mode='STRICT_TRANS_TABLES'", # }, } }
执行数据库迁移 如生成迁移报错 请检查django 版本 建议使用2.1.11
python manage.py makemigrations python manage.py migrate