MySQL 8.0 单节点
| 服务器IP | 主机角色 |
|---|---|
| 192.168.10.2 | MySQL Server |
MySQL Server
-
下载 mysql 安装包
- 服务器支持访问互联网
- 服务器不支持访问互联网
wget https://pdpublic.mingdao.com/private-deployment/offline/common/mysql-8.0.46-linux-glibc2.17-x86_64.tar.xz# mysql 安装包文件下载链接,下载完成后上传到部署服务器https://pdpublic.mingdao.com/private-deployment/offline/common/mysql-8.0.46-linux-glibc2.17-x86_64.tar.xz -
解压至安装目录
tar -xvf mysql-8.0.46-linux-glibc2.17-x86_64.tar.xzmv mysql-8.0.46-linux-glibc2.17-x86_64 /usr/local/mysql -
创建 mysql 用户
useradd -U -M -s /sbin/nologin mysql -
创建数据、日志目录并授予权限
mkdir -p /data/mysql/ /data/logs/mysqlchown -R mysql:mysql /usr/local/mysql/ /data/mysql/ /data/logs/mysql/ -
配置 systemd 管理文件
cat > /etc/systemd/system/mysql.service <<'EOF'[Unit]Description=MySQL ServerDocumentation=man:mysqld(8)Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.htmlAfter=network.targetAfter=syslog.target[Service]User=mysqlGroup=mysqlType=forkingPIDFile=/usr/local/mysql/mysqld.pidTimeoutSec=0PermissionsStartOnly=trueExecStart=/usr/local/mysql/bin/mysqld --daemonize --log-error=/data/logs/mysql/mysqld.log --datadir=/data/mysql --socket=/usr/local/mysql/mysql.sock --character-set-server=utf8mb4 --skip-name-resolve --pid-file=/usr/local/mysql/mysqld.pid --server-id=1 --log-bin=mysql-bin --max_connections=2000 --slow_query_log=1 --slow_query_log_file=/data/logs/mysql/mysql-slow.logLimitNOFILE=102400Restart=on-failureRestartPreventExitStatus=1PrivateTmp=false[Install]WantedBy=multi-user.targetEOF -
初始化
/usr/local/mysql/bin/mysqld --initialize --datadir=/data/mysql/ --user=mysql --log-error=/data/logs/mysql/mysqld.log -
启动 mysql 并加入开机自启动
systemctl daemon-reloadsystemctl enable mysqlsystemctl start mysql -
修改 mysql 密码
/usr/local/mysql/bin/mysql -h127.0.0.1 -uroot -p$(grep 'temporary password' /data/logs/mysql/mysqld.log | awk '{print $NF}')ALTER USER USER() IDENTIFIED BY '123456';update mysql.user set host='%' where user='root';FLUSH PRIVILEGES;grant all privileges on *.* to 'root'@'%' with grant option;FLUSH PRIVILEGES;quit;- 命令中修改的 root 用户密码为
123456,实际部署必须修改为强口令 - 若密码中包含特殊字符,仅允许
-或_,禁止使用@ ! # &等字符,以避免兼容性问题
- 命令中修改的 root 用户密码为
-
使用新设置的密码,通过以下命令测试数据库连接是否成功
/usr/local/mysql/bin/mysql -h127.0.0.1 -uroot -p123456