mysql-5.7.28 在Linux下的安装教程图解
1.官网下载Linux的版的 https://dev.mysql.com/downloads/mysql/5.7.html
2.上传tar包到服务器到 /usr/local/src
3.卸载系统自动的Mariadb rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
4.检查是否有mysql存在
rpm -qa|grep -i mysql
5.查询是否还有mysql的目录find / -name mysql
6.解压:tar -zxvf
7.修改名称:mv mysql-5.7.28-linux-glibc2.12-x86_64/ mysql-5.7.28
8.检查mysql组和用户是否存在,如无创建
cat /etc/group | grep mysql cat /etc/passwd | grep mysql
创建mysql组,并创建mysql用户加入mysql组中
groupadd mysql useradd -g mysql mysql passwd mysql #设置密码
8.更改所属的组和用户
[root@localhost src]# chown -R mysql mysql-5.7.28/ [root@localhost src]# chgrp -R mysql mysql-5.7.28/
9.创建data
10.删除etc下的my.cnf :rm -rf /etc/my.cnf;创建my.cnf
[mysql] # 设置mysql客户端默认字符集 default-character-set=utf8 [mysqld] skip-name-resolve #设置3306端口 port = 3306 # 设置mysql的安装目录 basedir=/usr/local/src/mysql-5.7.28 # 设置mysql数据库的数据的存放目录 datadir=/usr/local/src/mysql-5.7.28/data # 允许最大连接数 max_connections=200 # 服务端使用的字符集默认为8比特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使用的默认存储引擎 default-storage-engine=INNODB lower_case_table_names=1 max_allowed_packet=16M
11.安装初始化:bin/mysql_install_db --user=mysql --basedir=/usr/local/src/mysql-5.7.28/ --datadir=/usr/local/src/mysql-5.7.28/data/
12.重新修改下各个目录的权限
[root@localhost mysql-5.7.28]# chown -R root:root /usr/local/src/mysql-5.7.28/ [root@localhost mysql-5.7.28]# chown -R mysql:mysql /usr/local/src/mysql-5.7.28/data/
启动mysql
/usr/local/src/mysql-5.7.28/bin/mysqld_safe --user=mysql &
13. [root@localhost bin]# ./mysql -u root -p # 若默认没有密码,直接敲回车就可以
14. 如果不记得密码,vi /etc/my.cnf 在增加:skip-grant-tables 保存并退出(:wq)
15. 重启mysql:service mysqld restart ,然后./mysql -u root -p 直接回车
16. 修改密码:update user set authentication_string=password('123456) where user='root';
flush privileges; quit;
18.再次修改my.cnf:vi /etc/my.cnf 把刚刚添加的::skip-grant-tables 删除 保存并退出(:wq)
19.重启mysql :service mysqld restart ;./mysql mysql -u root -p 进入
20.若出现这个
systemctl stop firewalld.service #关闭防火墙服务 systemctl disable firewalld.service #禁止防火墙开启启动 firewall-cmd --state #检查防火墙状态 service mysqld restart
21.修改权限
use mysql; grant all privileges on *.* to root@"%" identified by "123456";
22.若出现报错
SET PASSWORD = PASSWORD('123456');
23.连接成功
总结