linux下基于docker环境安装mysql

一、安装docker
1、按着教程
https://docs.docker.com/install/linux/docker-ce/centos/#uninstall-old-versions
当前安装的dockeer版本是一个稳定版
sudo yum install docker-ce-17.03.2.ce-1.el7.centos

二、安装mysql
1、docker拉取mysql的镜像,构建镜像,启动镜像
https://www.cnblogs.com/loovelj/p/7823093.html
命令行启动mysql实例
docker run --name mysqlserver -e MYSQL_ROOT_PASSWORD=root -d -i -p 3306:3306 mysql:5.7

附件(无须理会)
【docker run的命令简单介绍 https://blog.csdn.net/stemq/article/details/52934795】

2、授权
1. GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘root’ WITH GRANT OPTION;
刷新权限
2.FLUSH PRIVILEGES;

3、telnet ip port看看mysql是否能正常访问,不能访问的话,需要开启3306端口,百度下看看,
我直接这个就可以了

3.1 lsof -i:3306
3.2 netstat -tnulp |grep 3306

3.3 添加3306端口对外访问:

3.4 iptables 可以关闭iptables 或者安装实际的情况进行设置。
iptables -I INPUT 1 -p tcp --dport 3306 -j ACCEPT
3.5 再看效果
netstat -tnulp |grep 3306
开启前和开启后显示不一样,再看nacvicate能不能正常连接

如果telnet一下看到不行,那可能其他问题,这里每个人机器不一样。

需要看具体情况尝试一下,我觉得主要问题一个是mysql授权grant,一个是mysql配置文件是否需要开启一些东西
可参考
1、https://blog.csdn.net/skylinethj/article/details/76176785
2、https://blog.csdn.net/WeakFantasy/article/details/52348829?locationNum=10

4、因为navicate的备份文件直接导入显示不了数据,主要原因是因为最大行设置问题,需要做修改my.cnf添加一行 max_allowed_packet=500M,具体操作:查询配置文件所在目录,自己百度一下, find / -name ‘my.cnf’,有几个这样的文件,百度下看mysql优先读取的是哪一个,看到是cd /etc/mysql ls看到有my.cnf
5、docker下面安装vim,apt-get update && apt-get install vim -y

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值