命令:
# docker run -d -v /jenkins/mysql55:/var/lib/mysql -p 3306:3306 --name mysql55 -e MYSQL_ROOT_PASSWORD=root mysql:5.5.62 --character-set-server=utf8mb4 --collation-server=utf8mb4_unicode_ci
注意:映射目录设置777权限防止权限问题
docker exec -it mysql55 /bin/sh
说明:mysql55 是运行时候指定的容器名称
通过上面命令可以直接登录容器里面,然后就像普通MySQL一样操作
登录数据库
mysql -uroot -proot
创建数据库
mysql>create database db_name;
创建用户
创建所有权限用户
grant all privileges on db_name.* to username@'%' identified by 'password' WITH GRANT OPTION;
创建只读权限用户
grant select on `db_name`.* to 'user_r'@'%' identified by 'password';
删除数据库
drop database xqlee;
备份所有库
docker exec mysql55 sh -c 'exec mysqldump --all-databases -uroot -p"$MYSQL_ROOT_PASSWORD"' > /jenkins/mysql55/all-databases.sql
备份指定库
docker exec mysql55 sh -c 'exec mysqldump -d mysql -uroot -p"root"' > /jenkins/mysql55/all-databases.sql
说明:
-d指定备份库为mysql
-p 后面根用户的密码
①复制数据文件到容器中
docker cp /root/mysql-xqlee-20201114.sql mysql55:/
②执行恢复命令
docker exec mysql55 sh -c 'exec mysql -uroot -proot xqlee < /mysql-xqlee-20201114.sql '
③删除容器中的备份文件
docker exec mysql55 sh -c 'exec rm -rf /mysql-xqlee-20201114.sql'
http://blog.xqlee.com/article/784.html