centos os 安装mysql还是挺费劲的,租后选择了一个省事的方式:Docker中使用mysql
docker stop $(docker ps -q) #停掉所有容器
docker rm $(docker ps -aq)#删掉所有容器
docker stop $(docker ps -q) & docker rm $(docker ps -aq) #俩命令一起
拉一下image
docker pull mysql #目前默认是8.0.3
启动容器
docker run --name m0 -td -p 3306:3306 -v /root/mysql/conf:/etc/mysql/conf.d -v /root/mysql/data:/var/lib/mysql -e MYSQL_ROOT_PASSWORD=root123456 mysql
#m0是名字
# -v 配置文件 和 数据持久化 映射到本地磁盘
日常使用
docker start m0 #先启动
docker exec -it m0 bash #在进入
docker exec -it m0 mysql -uroot -proot123456 #直接进入mysql
select version() #查看版本号
用vscode ssh remote 功能链接服务器操作更方便。
在django中执行
python manage.py migrate 时报错如下
django.db.utils.OperationalError: (2059, "Authentication plugin 'caching_sha2_password' cannot be loaded: /root/anaconda3/envs/django/lib/plugin/caching_sha2_password.so: cannot open shared object file: No such file or directory")
解决办法:
进入mysql 执行命令
use mysql;
select user,plugin from user where user='root';
可以看到有个用户的的加密方式为caching_sha2_password
执行命令
alter user 'root'@'%' identified with mysql_native_password by 'root123456'; #我自己的密码
flush privileges;