Linux下mysql5.7.29安装
1,下载安装包
[mysql5.7.29](https://dev.mysql.com/downloads/mysql/)
2,上传到服务器,并解压
[root@ecs-299b-0001 soft]# pwd
/home/soft
[root@ecs-299b-0001 soft]# tar -xvf mysql-5.7.29-linux-glibc2.12-x86_64.tar.gz
[root@ecs-299b-0001 soft]# mkdir mysql
[root@ecs-299b-0001 soft]# mv mysql-5.7.29-linux-glibc2.12-x86_64 mysql
[root@ecs-299b-0001 soft]# cd mysql
[root@ecs-299b-0001 soft]# mkdir data //存放数据文件夹
3,创建用户、用户组,并给修改安装目录文件夹所属用户和用户组
[root@ecs-299b-0001 soft]# groupadd mysql
[root@ecs-299b-0001 soft]# useradd -r -g mysql mysql
[root@ecs-299b-0001 soft]# chown -R mysql.mysql /home/soft/mysql
4,安装依赖
[root@ecs-299b-0001 soft]# yum -y install numactl
[root@ecs-299b-0001 soft]# yum search libaio
[root@ecs-299b-0001 soft]# yum install libaio
5,数据库初始化
[root@ecs-299b-0001 soft]# /home/soft/mysql/bin/mysqld --user=mysql --basedir=/home/soft/mysql/ --datadir=/home/soft/mysql/data --initialize
初始化完成后,会生成一个root用户默认的密码,一定要记下来。
6,编辑配置文件/etc/my.cnf
[root@ecs-299b-0001 soft]# vi /etc/my.cnf
添加如下内容(根据个人配置):
[mysqld]
basedir=/home/soft/mysql
datadir=/home/soft/mysql/data
# user=mysql
port=3306
socket=/var/lib/mysql/mysql.sock
# 开启事件
event_scheduler=1
# group_concat 最大长度,-1表示不限制
group_concat_max_len=-1
# sql检车模式
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
# 最大连接数(允许多少个连接)
max_connections=1000
# 连接交互等待时间(默认是28800,8小时)
interactive_timeout=31536000
wait_timeout=31536000
#是否对sql语句大小写敏感,1表示不敏感
lower_case_table_names = 1
7,配置环境
[root@ecs-299b-0001 soft]# cp /home/soft/mysql/support-files/mysql.server /etc/init.d/mysql
[root@ecs-299b-0001 soft]# chkconfig mysql on
[root@ecs-299b-0001 soft]# vi /etc/profile
配置mysql系统环境变量
MYSQL_HOME=/home/soft/mysql
export PATH=$MYSQL_HOME/bin:$PATH
8,启动mysql
[root@ecs-299b-0001 soft]# service mysql start;
启动报错:
**Starting MySQL.Logging to '/home/soft/mysql/data/ecs-299b-0001.err'.
2020-03-18T08:40:29.708732Z mysqld_safe Directory '/var/lib/mysql' for UNIX socket file don't exists.
The server quit without updating PID file (/home/soft/mysql[FAILED]s-299b-0001.pid).**
解决方案:
在/var/lib 目录下创建一个mysql文件夹,并修改所属用户和所属组
[root@ecs-299b-0001 etc]# mkdir /var/lib/mysql
[root@ecs-299b-0001 etc]# chmod 777 /var/lib/mysql
9,进入mysql命令行,修改用户密码
[root@ecs-299b-0001 soft]# mysql -uroot -p -h127.0.0.1
mysql> alter user 'root'@'localhost' identified by 'Ezo5h4OWdyMF';
mysql> use mysql;
mysql> udpate user set host = '%' where user = 'root';
mysql>