Docker安装MYSQL8及内存优化

    科技2024-03-15  100

    1 参考官网,安装Docker

    2 在安装前,上https://hub.docker.com/_/mysql/?tab=tags看一下MYSQL的版本

    3 查找镜像

    docker search mysql

    4 拉取镜像(不指定版本号,下载mysql镜像,默认最新版本)

    docker pull mysql:8.0

    5 查看镜像

    docker images

    6 通过镜像创建容器并运行

    docker run -di --name=mysql8.0 -p 3306:3306 -e MYSQL_ROOT_PASSWORD=123456 mysql:8.0

    -di 代表守护式( 启动后台进程运行)                                                                                             

    -p 代表端口映射,格式为 宿主机映射端口:容器运行端口

    -e 代表添加环境变量 MYSQL_ROOT_PASSWORD 是 root 用户的登陆密码

    7 登陆容器

    docker ps查看是否安装成功;

    进入容器 docker exec -it 容器id bash

    注意

     无法远程连接的问题

    注意 docker 中安装的最新的 mysql 版本是 8.0 版本 MySql8.0 版本 和 5.0 的加密规则不一样,而现在的可视化工具只支持旧的加密方式。因此我们需要修改 MySQL 用户登录的加密规则修改为mysql_native_password

    # 进入mysql服务 # -u 用户名 # -p 登录密码 mysql -uroot -p123456 ALTER USER 'root'@'localhost' IDENTIFIED BY '123456' PASSWORD EXPIRE NEVER; ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

    8 限制内存

    docker进入mysql容器内,进入/etc/mysql/conf.d 目录执行 vim docker.cnf

    安装vim(可选)

    apt-get update

    apt-get install vim [mysqld] performance_schema_max_table_instances=400 table_definition_cache=400 #缓存 performance_schema=off #用于监控MySQL server在一个较低级别的运行过程中的资源消耗、资源东西 table_open_cache=64 #打开表的缓存 innodb_buffer_pool_chunk_size=64M #InnoDB缓冲池大小调整操作的块大小 innodb_buffer_pool_size=64M #InnoDB 存储引擎的表数据和索引数据的最大内存缓冲区大小

    重启mysql容器

    docker stop mysql8.0

    docker start mysql8.0

    Processed: 0.010, SQL: 8