一,安装docker前的准备工作
如果之前安装过旧版本,先卸载:
yum remove docker \
docker-client \
docker-client-latest \
docker-common \
docker-latest \
docker-latest-logrotate \
docker-logrotate \
docker-selinux \
docker-engine-selinux \
docker-engine
rm -rf /etc/systemd/system/docker.service.d
rm -rf /var/lib/docker
rm -rf /var/run/docker
docker要求Centos内核版本高于3.10,查看内核版本:
uname -r
这里可以更新下yum,yum源地址为国内的话下载的会比较快:
#更新yum
sudo yum update
#安装软件包,yum-util 提供yum-config-manager功能,另外两个是devicemapper驱动依赖的
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
#这里配置yum源地址为aliyun
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
二,安装docker
查看仓库中的docker版本:
yum list docker-ce --showduplicates | sort -r
选择指定版本安装:
sudo yum install docker-ce#默认安装最新版本
#或安装指定版本,如下
sudo yum install docker-ce-17.12.0.ce
启动docker:
sudo systemctl start docker
设置开启自启:
sudo systemctl enable docker
验证查看docker版本信息:
docker version
三,利用docker安装mysql5.7
查看仓库中的mysql:
docker search mysql
把选定的mysql版本pull到本地系统中:
docker pull mysql:5.7
列出镜像:
docker images
启动容器:
docker run --name mysql5.7 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 -d mysql:5.7
查看所有状态下的容器
docker ps -a
进入mysql容器:
#b5af2e6359f8 这个是docker ps -a查询出来容器的CONTAINER ID
docker exec -it b5af2e6359f8 bash
注意要设置为不区分大小写比较表名:
vim /etc/mysql/mysql.conf.d/mysqld.cnf
在[mysqld]下加入一行:
lower_case_table_names=1
lower_case_table_names=1 表示,表名存储在磁盘是小写的,但是比较的时候是不区分大小写
最后退出mysql容器(exit),重启mysql容器
docker restart 【CONTAINER ID】
在navicat中就可以连接了
可以在navicat测试下大小写是否设置成功:
show global variables like '%lower_case%';
最后,如果用的aliyun服务器记得开放下端口
注意:
服务器能连上MySQL 但是navicat报这样一个错误:
host ‘XXXXX’ is not allowed to connect to this mysql server
只需要进入MySQL:
grant all privileges on *.* to 'root'@'%' with grant option;
如果报错:ERROR 1410 (42000): You are not allowed to create a user with GRANT 则执行下面的语句:
use mysql;
update user set host=’%’ where user=‘root’;
然后刷新:
flush privileges;
就可以了。