MySQL5.7二进制安装
安装前软件包准备
卸载mariadb
[root@localhost ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.65-1.el7.x86_64
[root@localhost ~]# yum remove mariadb-libs-5.5.65-1.el7.x86_64 -y
安装libaio
yum -y install libaio
下载软件包
下载地址
https://downloads.mysql.com/archives/community/
选择包
使用命令下载
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz
安装前系统优化
swap设置
使用swappiness限定swap分区的使用
[root@localhost ~]# cat /proc/sys/vm/swappiness
30
[root@localhost ~]# sysctl -a | grep swap
vm.swappiness = 30
- 0 代表最大限度使用物理内存,然后才使用swap,这样容易导致系统内存溢出,出现OOM错误,从而使mysql进程被意外kill掉。
- 100 代表积极使用swap,并将物理内存上的数据即使迁到swap上。
调整软硬限制
查看当前系统限制
[root@localhost ~]# ulimit -a
open files (-n) 1024
max user processes (-u) 15603
## MySQL5.7安装
**创建数据表**
优化软硬限制,避免因限制原因导致的报错
[root@localhost ~]# tail /etc/security/limits.conf
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
重启操作系统生效
MySQL5.7 安装
创建用户
[root@localhost ~]# groupadd mysql
[root@localhost ~]# useradd -r -g mysql mysql -s /sbin/nologin
解压、软链接
[root@localhost ~]# cd /usr/local/
[root@localhost local]# tar zxf mysql-5.7.35-linux-glibc2.12-x86_64.tar.gz
[root@localhost local]# ln -s mysql-5.7.35-linux-glibc2.12-x86_64 mysql
[root@localhost local]# chown -R mysql:mysql mysql
建立数据目录
[root@localhost local]# mkdir -p /data/mysql/{data,logs,binlog}
[root@localhost ~]# chown -R mysql:mysql /data/mysql/
编写配置文件
[root@localhost mysql]# vim /etc/my.cnf
[mysql]
prompt="\\u@\\h [\\d]>"
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /data/mysql/data
port = 3306
socket = /data/mysql/my.sock
log-error = /data/mysql/logs/error.log
初始化数据库
[root@localhost ~]# /usr/local/mysql/bin/mysqld --defaults-file=/etc/my.cnf --initialize
[root@localhost ~]# /usr/local/mysql/bin/mysqld_safe --defaults-file=/etc/my.cnf &
- –initialize表示生成一个临时的数据库初始化密码,记录在log-error里面
- –initialize-insecure表示无密码进入
修改密码
[root@localhost ~]# /usr/local/mysql/bin/mysql -uroot -p -S /data/mysql/my.sock
root@localhost [(none)]>set password = '1qaz3edc';
root@localhost [(none)]>ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
设置环境变量
[root@localhost ~]# vim /etc/profile
PATH="$PATH":/usr/local/mysql/bin
[root@localhost ~]# source /etc/profile