mysql8二进制安装详解
目录
1.从官网下载二进制包
打开https://dev.mysql.com/downloads/mysql/,选择glibc版本需要根据操作系统情况选择
glibc 和 libc 都是 Linux 下的 C 函数库。libc 是 Linux 下的 ANSI C 函数库;glibc 是 Linux 下的 GNU C 函数库。版本向下兼容
#使用ldd命令可以查看glibc版本,ldd命令用于打印可执行文件依赖的共享库。通过检查输出的第一行,你可以找到glibc的版本信息。
ldd --version
wget https://dev.mysql.com/get/Downloads/MySQL-8.4/mysql-8.4.7-linux-glibc2.28-x86_64.tar.xz

2.创建mysql用户及用户组
groupadd mysql
useradd -r -g mysql -s /sbin/nologin mysql
3.解压MySQL包,创建软链接
tar -Jxf mysql-8.4.7-linux-glibc2.28-x86_64.tar.xz
ln -s /opt/mysql/database/mysql-8.4.7-linux-glibc2.28-x86_64/ /usr/local/mysql
4.编辑配置⽂件
vim /etc/my.cnf
注意刺配置文件为测试使用的配置文件,生产环境的还需要加其他的配置项
[client]
socket = /data/mysql/3306/data/mysql.sock
[mysqld]
basedir = /usr/local/mysql
datadir = /data/mysql/3306/data
user = mysql
port = 3306
socket = /data/mysql/3306/data/mysql.sock
log_error = /data/mysql/3306/data/mysqld.err
log_timestamps = system
log-bin = mysql-bin
server-id = 1
5.创建并授权mysql数据目录
mkdir -p /data/mysql/3306/data
chown -R mysql:mysql /data/mysql/3306/ /usr/local/mysql
6.初始化实例
/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize
7.创建 systemd 服务配置⽂件
# vim /usr/lib/systemd/system/mysqld.service
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
Type=forking
PIDFile=/data/mysql/3306/data/mysqld.pid
# Disable service start and stop timeout logic of systemd for mysqld service.
TimeoutSec=0
# Start main service
ExecStart=/usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --pid- file=/data/mysql/3306/data/mysqld.pid --daemonize $MYSQLD_OPTS
# Use this to switch malloc implementation
EnvironmentFile=-/etc/sysconfig/mysql
# Sets open_files_limit
LimitNOFILE = 65535
Restart=on-failure
RestartPreventExitStatus=1PrivateTmp=false
8.使⽤ systemd 管理服务
systemctl daemon-reload
systemctl start mysqld
systemctl stop mysqld
systemctl status mysqld
systemctl enable mysqld
9.如何判断实例是否启动成功
1. 查看错误⽇志。
2. 查看 mysqld 进程是否启动
ps -ef | grep mysql
#创建软链接,使用mysql命令
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
mysql -u root -p
10.定位实例启动失败的原因
1. 查看错误⽇志。
2. 通过 mysqld 启动。
/usr/local/mysql/bin/mysqld --defaults-file=my.cnf &
3. 只指定⼏个必要的参数启动。
/usr/local/mysql/bin/mysqld --no-defaults --basedir=/usr/local/mysql -
datadir=/data/mysql/3306/data/ --user=mysql
如果还是不⾏,可通过 strace 查看 MySQL 启动过程中的系统调⽤情况。
更多推荐

所有评论(0)