大家好,我是考100分的小小码 ,祝大家学习进步,加薪顺利呀。今天说一说用 Docker 启动 MySQL「终于解决」,希望您对编程的造诣更进一步.
事情是这样的,我们已经把项目交付给了甲方,甲方还想进一步开发,但是我们的报价让甲方不满意。甲方就找了其他人开发。讲真,一分钱一分货,那伙人把服务器搞摊跑路了,各种服务全挂了。
要知道,把他们搞坏的修好,还不如重装系统比较快,何况是云服务器。
我复制下来数据库的文件们,大概长这样。
因为是 mysql 5.7 的数据库。先下载一个镜像。
docker pull mysql:5
代码100分
然后在这个目录启动起来。
代码100分docker run -d
--name mysql
-v $PWD:/var/lib/mysql
-p 3306:3306
mysql:5
Can’t open the mysql.plugin table. Please run mysql_upgrade to create it.
出现这个错误启动不起来时,可能是 MySQL 版本问题,我用的版本比之前的低了,5.7 用了 5.6 的 MySQL,报错直接退出了。
然后进入容器看看。
docker exec -it mysql bash
这时候我发现我不能连接数据库,因为密码不对,不管是啥原因,反正是不对,我猜是跑路那群人把密码改了(有点腹黑),然后就要 skip-grant-tables
,但是发现没有 vi。
没关系,办法总比困难多。
复制出来改。
代码100分docker cp mysql:/etc/mysql/mysql.conf.d/mysqld.cnf ~/Desktop
改完复制回去。
docker cp ~/Desktop/mysqld.cnf mysql:/etc/mysql/mysql.conf.d/mysqld.cnf
好了,可以重启试试了。我就不截图了。
docker restart mysql
然后还有没有好玩的?当然还可以继续,上 phpMyAdmin 哇。我目标是吧数据掏出来重新部署哇,当然有很多方法,但是我习惯 phpMyAdmin。
docker pull phpmyadmin/phpmyadmin
docker run --name myadmin -d
-p 8088:80
-e PMA_ARBITRARY=1
phpmyadmin/phpmyadmin
注意数据库用户是否能在容器外访问。
好了,这样可以比较友好的操作这个数据库了,至少这样的方案是免费的。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
转载请注明出处: https://daima100.com/9355.html