docker pull leaon/mysql:0.0.3在创建MySQL会默认创建一个用户udebian-sys-maint .
在创建前 注意/var/lib/mysqlMySQL数据目录,所有的表以及用户表都在此目录下.
-v /var/lib/mysql:/var/lib/mysql 如果宿主机之前装有MySQL数据在/var/lib/mysql目录下,需要先将数据进行备份./var/lib/mysql 有之前的数据很可能无法创建成功过,建议创建容器时 使用 --restart=always
注意:在删除容器时,如果没有挂载目录,请将容易的数据进行备份
docker run -di -p 3306:3306 --restart=always --name mysql leaon/mysql:0.0.3
docker run -di -p 3306:3306 --name mysql leaon/mysql:0.0.3
docker run -it --net=host --rm leaon/mysql:0.0.3 mysql -hlocalhost -udebian-sys-maint
docker run -di -e DB_REMOTE_ROOT_NAME=root -e DB_REMOTE_ROOT_PASS=password -e DB_REMOTE_ROOT_HOST=% -p 3306:3306 --restart=always --name mysql leaon/mysql:0.0.3
DB_REMOTE_ROOT_NAME:远程用户名
DB_REMOTE_ROOT_PASS: 远程用户密码
DB_REMOTE_ROOT_HOST: 远程用户host,%通配符表示可以在任意主机使用用户登录数据库
docker run -di -e DB_REMOTE_ROOT_NAME=root -e DB_REMOTE_ROOT_PASS=password -e DB_REMOTE_ROOT_HOST=% -p 3306:3306 --name mysql leaon/mysql:0.0.3
docker run -it --rm leaon/mysql:0.0.3 mysql -h192.168.2.1 -uroot -password
-h:指定公网IPdocker run -di -v /opt/mysql/data:/var/lib/mysql -e DB_REMOTE_ROOT_NAME=root -e DB_REMOTE_ROOT_PASS=password -e DB_REMOTE_ROOT_HOST=% -p 3306:3306 --restart=always --name mysql leaon/mysql:0.0.3
指定挂载数据目录 /opt/mysql/data
如果服务器开启了SELinux 在指定目前时出现没有权限问题
解决:
mkdir -p /opt/mysql/data
sudo chcon -Rt svirt_sandbox_file_t /opt/mysql/data
-R: 目录递归,-t:文件类型, svirt_sandbox_file_t:SELinux中的文件类型
SELinux 文件有五部分组成
DB_REMOTE_ROOT_NAME:远程用户名
DB_REMOTE_ROOT_PASS: 远程用户密码
DB_REMOTE_ROOT_HOST: 远程用户host,%通配符表示可以在任意主机使用用户登录数据库
停止容器 docker stop mysql
运行容器 docker start mysql
重新运行 docker restart mysql
docker run -di -e DB_REMOTE_ROOT_NAME=root -e DB_REMOTE_ROOT_PASS=password -e DB_REMOTE_ROOT_HOST=% -p 3306:3306 --name mysql leaon/mysql:0.0.3
Content type
Image
Digest
Size
84.8 MB
Last updated
over 6 years ago
docker pull leaon/mysql:0.0.3