二进制安装mysql-超详细
首先在官网下载二进制包
https://downloads.mysql.com/archives/community/
##安装依赖包
[root@localhost ~]# yum install -y ncurses-devel libaio-devel
#忽略依赖并卸载,yum卸载会一并移除postfix软件
[root@localhost ~]# rpm -e --nodeps mariadb-libs
#创建安装目录及程序用户
[root@localhost ~]# mkdir /app
[root@localhost ~]# useradd -M -s /sbin/nologin mysql
#wget下载二进制包
[root@localhost ~]# wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz
#解压至指定目录
[root@localhost ~]# tar xf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz -C /app
#优化路径
[root@localhost ~]# ln -s /app/mysql-5.7.32-linux-glibc2.12-x86_64 /app/mysql
#环境变量路径优化
[root@localhost ~]# echo PATH=/app/mysql/bin/:$PATH >> /etc/profile
[root@localhost ~]# source /etc/profile
#创建数据目录并授权 -- 生产环境拿新磁盘,和系统盘独立开来
[root@localhost ~]# mkdir /data/mysql/data -p
[root@localhost ~]# chown -R mysql.mysql /app/mysql*
[root@localhost ~]# chown -R mysql.mysql /data
#优化数据库
[root@localhost ~]# rm -rf /data/mysql/data/*
[root@localhost ~]# mysqld --initialize --user=mysql --basedir=/app/mysql --
datadir=/data/mysql/data
2023-07-20T14:29:01.902577Z 1 [Note] A temporary password is generated for root@localhost: ,m*_XjUa4>lj
ps:此时默认密码为:,m*_XjUa4>lj
#创建配置文件
[root@localhost ~]# vi /etc/my.cnf
[mysqld]
user=mysql
basedir=/app/mysql
datadir=/data/mysql/data
server_id=6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
#配置启动mysql
[root@localhost ~]# /app/mysql/support-files/mysql.server start
[root@localhost ~]# /app/mysql/support-files/mysql.server restart
[root@localhost ~]# /app/mysql/support-files/mysql.server stop
[root@localhost ~]# /app/mysql/support-files/mysql.server status
##使用systemctl对mysql进行管理
#先关闭进程
[root@localhost ~]# /app/mysql/support-files/mysql.server stop
[root@localhost ~]# vi /etc/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
ExecStart=/app/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
#启动进程
[root@localhost ~]# systemctl restart mysqld
#登录数据库
[root@localhost ~]# mysql -uroot -p
Enter password: 输入默认密码
mysql>