Linux 安装 Mysql(Docker)

Linux 安装 Mysql

以下操作在root用户下 否则加上sudo

docker pull mysql:5.7

注意 容器名字如果有 - 会错误

docker run -p 3306:3306 --name mysql \
  -v /mydata/mysql/log:/var/log/mysql \
  -v /mydata/mysql/data:/var/lib/mysql \
  -v /mydata/mysql/conf:/etc/mysql/conf.d \
  -e MYSQL_ROOT_PASSWORD=root \
  --restart=always \
  -d mysql:5.7
  • -p 3306:3306: 将主机的 3306 端口映射到容器的 3306 端口,允许主机通过该端口访问 MySQL 服务。

  • --name mysql: 为容器指定了一个名称为 "mysql",方便后续对容器的管理操作。

  • -v /mydata/mysql/log:/var/log/mysql: 将主机上的目录 /mydata/mysql/log 挂载到容器内的 /var/log/mysql 目录,用于存储 MySQL 的日志文件。

  • -v /mydata/mysql/data:/var/lib/mysql: 将主机上的目录 /mydata/mysql/data 挂载到容器内的 /var/lib/mysql 目录,用于存储 MySQL 数据文件。

  • -v /mydata/mysql/conf:/etc/mysql/conf.d: 将主机上的目录 /mydata/mysql/conf 挂载到容器内的 /etc/mysql/conf.d 目录,用于存储 MySQL 的配置文件。

  • -e MYSQL_ROOT_PASSWORD=root: 设置 MySQL 的 root 用户的密码为 "root"。

  • --restart=always: 设置容器总是在退出时自动重启。

  • -d: 将容器以守护进程(后台)模式运行。

配置文件

vi /mydata/mysql/conf/my.cnf

[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
init_connect='SET collation_connection = utf8_unicode_ci' 
init_connect='SET NAMES utf8' 
character-set-server=utf8
collation-server=utf8_unicode_ci
skip-character-set-client-handshake
skip-name-resolve

注意:解决 MySQL 连接慢的问题

在配置文件中加入如下,并重启 mysql

[mysqld]

skip-name-resolve

解释:

skip-name-resolve:跳过域名解析

cat 和 vi/vim 是 Linux 系统中常用的命令和编辑器:

cat 是一个用于连接文件并打印到标准输出的命令。它通常用于显示文件的内容。例如,cat filename 将会显示 filename 文件的内容到终端上。

vi 和 vim 是 Linux 中的文本编辑器。它们允许用户创建、编辑和查看文本文件。vi 是 vim 的前身,vim 是 vi 的改进版本,提供了更多功能和快捷键。它们都是非常强大且灵活的文本编辑工具。

posted @ 2024-04-01 18:43  Shie1d  阅读(89)  评论(0)    收藏  举报