Centos /Linux环境下利用Docker 安装mysql5.7镜像(含离线安装),启动mysql镜像并初始化数据库
Docker 安装mysql镜像,含离线
Docker 安装mysql镜像(含离线)
准备mysql的Docker镜像(需要在有网的服务器中下载)
-
使用有网的服务器下载好镜像
docker pull mysql:5.7 -
保存下载好的镜像成tar
docker images docker save imageid > mysql5.7 ll
将准备好tar导入到docker镜像
-
将镜像上传到所需服务器(放在固定位置)
-
导入镜像
docker load <mysql5.7注意名称,这里的mysql5.7和上面打包
docker save imageid > mysql5.7的名称一致,本例未改名
-
查看导入的镜像,并重新命名镜像
docker images docker tag imageid mysql:5.7
Docker启动mysql镜像并初始化数据库
Docker启动MySQL镜像
-
创建本地数据库目录、配置文件以及日志目录(方便进行容器数据卷挂载)
mkdir -p /home/app/mysql/data /home/app/mysql/logs /home/app/mysql/conf -
启动镜像
docker run --name mysql -p 3306:3306 -v /home/app/mysql/data:/var/lib/mysql -v /home/app/mysql/conf:/etc/mysql/conf.d -v /home/app/mysql/logs:/var/log/mysql -e MYSQL_ROOT_PASSWORD=123456 -d eef0fab001e8-p 3306:3306:端口映射,将宿主机3306端口与容器3306端口做映射
格式:-p 宿主机端口:容器端口–name mysql: 指定容器名字为mysql,也可以不指定,不指定没有容器名字数据容器卷挂载
-v /home/app/mysql/data:/var/lib/mysql:对宿主机数据库目录与容器数据库目录进行映射挂载-v /home/app/mysql/conf:/etc/mysql/conf.d:对宿主机数据库配置文件与容器数据库配置文件进行映射挂载-v /home/app/mysql/logs:/var/log/mysql:对宿主机数据库日志与容器数据库日志进行映射挂载-e MYSQL_ROOT_PASSWORD=123456:配置mysql的root账号的密码为123456(可以根据需要自行修改密码)-d:后台执行eef0fab001e8:镜像id,容器第一次启动要根据镜像来启动,所以镜像id必不可少。可以通过命令docker iamges查看镜像id
Docker初始化数据库
有网配置(非必要,按需修改)
-
进入到bash
docker exec -it eef0fab001e8 bin/basheef0fab001e8:镜像id,容器第一次启动要根据镜像来启动,所以镜像id必不可少。可以通过命令docker iamges查看镜像id -
docker 安装vim(有网)
apt-get update apt-get install vim -
修改mysql的配置(非必要,按需修改)
vi /etc/my.cnf修改的内容为:
character-set-server=utf8 max_connections = 5000 log_bin_trust_function_creators=1 lower_case_table_names = 1 sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES transaction_isolation = READ-COMMITTED group_concat_max_len = 102400退出 bash (2 种操作) 1)Ctrl + d 退出容器(也可直接输入:exit); 2)Ctrl + p + q 退出并在后台运行容器;
-
重启 docker 容器
docker restart [容器名]
无网配置(非必要,按需修改)
-
进入到bash
docker exec -it eef0fab001e8 bin/basheef0fab001e8:镜像id,容器第一次启动要根据镜像来启动,所以镜像id必不可少。可以通过命令docker iamges查看镜像id -
docker 配置my.cnf(非必要,按需修改)【直接拷贝,需重启】
复制/root/mysql_db_back/下的my.cnf文件到容器中的etc目录下
docker cp /root/mysql_db_back/my.cnf mysql:/etc重启 docker 容器
docker restart [容器名] -
检查参数配置
SHOW VARIABLES WHERE variable_name IN ( 'log_bin_trust_function_creators', 'transaction_isolation', 'lower_case_table_names', 'sql_mode', 'character_set_server', 'default_character_set', 'innodb_large_prefix', 'max_connections', 'innodb_buffer_pool_size', 'group_concat_max_len' );
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐



所有评论(0)