4.2 KiB
4.2 KiB
title, date, lastmod, tags, categories
title | date | lastmod | tags | categories | ||||
---|---|---|---|---|---|---|---|---|
安装 Mysql | 2019-10-30T13:00:28+08:00 | 2022-03-28T19:00:00+08:00 |
|
|
CentOS7 yum 安装 Mysql5.7
环境
- CentOS 7.4 x86_64 最小安装
- MySQL 5.7.20
安装 mysql yum 源
-
下载 rpm 包
# repo 地址: https://repo.mysql.com/ cd /root/ curl -O https://repo.mysql.com/mysql57-community-release-el7.rpm
-
安装 mysql 源
rpm -ivh /root/mysql57-community-release-el7.rpm
-
更新 yum 缓存
yum clean all yum makecache fast
安装 mysql
-
yum 安装 mysql 包
yum install mysql-community-server
-
启动 mysql
systemctl start mysqld
-
查找 mysql 默认 root 密码
grep 'temporary password' /var/log/mysqld.log
-
修改 root 密码
mysqladmin -uroot -p password 'Pass-1234' # 输入查找到的密码
CentOS7 安装 MySQL8 通用二进制包
环境
- CentOS 7.9 x86_64 最小安装
- MySQL 8.0.28 多实例
- 普通用户 mortal
安装 mysql
-
创建普通用户 mortal,切换到 mortal 用户下
useradd -m mortal su - mortal
-
下载 MySQL8 通用二进制包
cd ~ curl -LO https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-8.0/mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz
-
解压
cd ~ tar xf mysql-8.0.28-linux-glibc2.12-x86_64.tar.xz mv mysql-8.0.28-linux-glibc2.12-x86_64 mysql
-
创建三个实例的目录
cd ~ mkdir -p instance-{1..3}/{file,log}
-
创建各实例的配置文件 instance-{1..3}/my.cnf
cd ~ for i in {1..3}; do cat > instance-$i/my.cnf <<-EOF [mysqld] mysqlx = OFF port = 330$i basedir = /home/mortal/mysql datadir = /home/mortal/instance-$i/db socket = /home/mortal/instance-$i/mysqld.sock pid-file = /home/mortal/instance-$i/mysqld.pid secure-file-priv = /home/mortal/instance-$i/file log-timestamps = SYSTEM log-error = /home/mortal/instance-$i/log/error.log slow-query-log = TRUE slow-query-log-file = /home/mortal/instance-$i/log/slow.log character-set-server = utf8mb4 default-storage-engine = innodb #default-authentication-plugin = mysql_native_password authentication_policy = mysql_native_password lower-case-table-names = 1 [client] socket = /home/mortal/instance-$i/mysqld.sock EOF done
初始化基础数据
- 初始化每个实例的数据目录
cd ~ mysql/bin/mysqld \ --defaults-file=/home/mortal/instance-1/my.cnf \ --initialize-insecure mysql/bin/mysqld \ --defaults-file=/home/mortal/instance-2/my.cnf \ --initialize-insecure mysql/bin/mysqld \ --defaults-file=/home/mortal/instance-3/my.cnf \ --initialize-insecure
启动 mysql
- 启动每个实例的 mysql
cd ~ mysql/bin/mysqld_safe \ --defaults-file=/home/mortal/instance-1/my.cnf \ &>> instance-1/log/mysqld_safe.out mysql/bin/mysqld_safe \ --defaults-file=/home/mortal/instance-2/my.cnf \ &>> instance-2/log/mysqld_safe.out mysql/bin/mysqld_safe \ --defaults-file=/home/mortal/instance-3/my.cnf \ &>> instance-3/log/mysqld_safe.out
设置 root 密码
- 设置 mysql root 账户的密码
cd ~ mysql/bin/mysqladmin \ --defaults-file=/home/mortal/instance-1/my.cnf \ password mysql/bin/mysqladmin \ --defaults-file=/home/mortal/instance-2/my.cnf \ password mysql/bin/mysqladmin \ --defaults-file=/home/mortal/instance-3/my.cnf \ password
客户端链接
- 使用本机客户端链接 mysql
cd ~ mysql/bin/mysql \ --defaults-file=/home/mortal/instance-1/my.cnf \ -uroot \ -p mysql/bin/mysql \ --defaults-file=/home/mortal/instance-2/my.cnf \ -uroot \ -p mysql/bin/mysql \ --defaults-file=/home/mortal/instance-3/my.cnf \ -uroot \ -p