一、单机安装

1.1 二进制包安装

1.1.1 下载mysql
  • https://dev.mysql.com/downloads/mysql/
    1.1.2 解压
    1. xz -d mysql-8.0.21-linux-glibc2.12-x86_64.tar.xz
    2. tar -xvf mysql-8.0.21-linux-glibc2.12-x86_64.tar
    1.1.3 配置用户和用户组
    1. sudo groupadd mysql
    2. useradd -r mysql
    3. chown mysql:mysql -R mysql-8.0.18-linux-glibc2.12-x86_64
    1.1.4 初始化
    ```shell cd mysql-8.0.18-linux-glibc2.12-x86_64/ sudo ./bin/mysqld —user=mysql —basedir=$PWD —datadir=$PWD/data —initialize

#命令行中打印的账号root的随机密码: root@localhost: FUh+W/TVe92p

  1. <a name="F9dwJ"></a>
  2. ##### 1.1.5 启动
  3. ```shell
  4. sudo ./support-files/mysql.server start
  5. #输出
  6. Starting MySQL
  7. [.ok

1.1.6 配置
  1. #加入系统进程
  2. sudo cp support-files/mysql.server /etc/init.d/mysqld
  3. #重启
  4. service mysqld restart
  5. #在/usr/bin下建立指向mysql的软连接(方便使用mysql 客户端)
  6. #$PWD : /home/hdj/software/mysql
  7. sudo ln -s $PWD/bin/mysql /usr/bin
  8. #登录mysql (输入随机密码)
  9. mysql -uroot -p
  10. #修改密码
  11. #ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
  12. alter user 'root'@'localhost' identified by '123456';
  13. #开机自启动
  14. sudo systemctl enable mysqld

1.1.7 卸载
  1. #停止mysql 服务
  2. service mysqld stop
  3. #关闭自动启动
  4. sudo systemctl disenable mysqld
  5. # 删除mysql 文件
  6. sudo rm -rf /usr/bin/mysql /etc/mysql /etc/init.d/mysqld
  7. #删除用户及用户组
  8. userdel mysql
  9. #查看
  10. ps -ef | grep mysql

1.2 docker 安装

  1. docker pull mysql:8.0.21
  2. docker run --name blog-mysql-serve \
  3. -e MYSQL_ROOT_PASSWORD=123456 \
  4. -e TZ=Asia/Shanghai -d -i -p 4406:3306 \
  5. -v $PWD/data:/var/lib/mysql \
  6. -v $PWD/conf/my.conf:/etc/mysql/my.conf \
  7. --restart=always mysql:8.0.21
  8. //忽略表名大小写(mysql 命令)
  9. --lower_case_table_names=1 忽略表名大小写(linux)
  10. //数据挂载,配置挂载
  11. //(/home/hdj/docker/mysql/conf:目录)
  12. -v /home/hdj/docker/mysql/conf:/etc/mysql/conf.d
  13. //数据挂载
  14. -v /my/own/datadir:/var/lib/mysql
  15. //root密码
  16. -e MYSQL_ROOT_PASSWORD=1234
  17. //创建用户
  18. -e MYSQL_USER="dev"
  19. //新建用户密码
  20. -e MYSQL_PASSWORD="dev1234"
  21. //时区
  22. -e TZ=Asia/Shanghai
  23. //开机启动
  24. --restart=always
  25. //提升容器权限
  26. --privileged=true

1.3 mysql 配置文件

  1. [mysqld]
  2. secure-file-priv = NULL
  3. #忽略表大小写
  4. lower_case_table_names = 1
  5. [client]
  6. default-character-set=utf8mb4
  7. [mysql]
  8. default-character-set=utf8mb4

1.4 mysql 修改密码验证器

  1. select host,user,plugin,authentication_string from mysql.user;
  2. #修改用户访问权限
  3. ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'password';
  4. FLUSH PRIVILEGES;

二、集群安装

参考