注意:安装mysql之前,要先检查我们的RedHat操作系统版本号,因为我们安装的mysql版本要和操作系统版本保持一致,如果版本不一致,mysql在安装过程中会出现依赖缺失,从而导致安装失败!切记,这个是博主踩过的坑。
一、检查操作系统版本
#输入指令 : cat /proc/version
显示 RedHat enterpise Linus server 7.4
本机Linus的版本是7.4的,所以我们需要下载Linus7 64位的mysql
二、下载mysql
1.mysql8.0下载地址:https://dev.mysql.com/downloads/mysql/
2.进入下载页面后选择
3.选择后在页面下方出现很多版本的mysql,选择我们需要的即可,点击Download下载。’
4.点击No thanks, just start my download即可,此时mysql开始下载.
三、安装MySQL
1.安装前检查服务器是否已安装MySQL,如已安装则将其卸载:
[root@localhost]# rpm -qa|grep mysql
mysql-libs-5.1.71-1.el6.x86_64
[root@localhost]# rpm -e --nodeps mysql-libs-5.1.71-1.el6.x86_64 //卸载mysql
2.在/usr/local/ 目录下创建文件夹mysql,将下载的tar包放在mysql文件夹下.,解压mysql-8.0.12-1.el7.x86_64.rpm-bundle.tar
[mysql] # tar -xvf mysql-8.0.12-1.el7.x86_64.rpm-bundle.tar
按顺序依次安装:
rpm -ivh mysql-community-common-8.0.12-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.12-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.12-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.12-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.12-1.el7.x86_64.rpm
注意:有的同学在安装 mysql-community-devel-8.0.12-1.el7.x86_64.rpm时会出缺失openssl依赖的错误
输入:yum install openssl-devel 即可 根据提示安装openssl依赖
此时,MySQL已经安装成功。
四、环境变量设置
1.启动MySQL:service mysqld start(或者systemctl mysqld start)
2.登录:mysql -u root -p,初次登录密码为空,直接回车:
报错,为什么会出现这个错误,原因是因为MySQL5.7中的mysql.user 表中没有Password字段,所以要以安全方式登录,然后修改密码。
解决方法如下:
修改MySQL配置文件:vim /etc/my.cnf,在文件末尾加上:skip-grant-tables,保存后重启MySQL服务:service mysqld restart。
3.修改密码,用户密码是在名为mysql的database下面:
依次执行以下指令:
[root@localhost mysql]# mysql –uroot -p
mysql> flush privileges; //此步骤为刷新权限;
Query OK, 0 rows affected (0.00 sec)
mysql> alter user 'root'@'localhost' identified by '12345'; //修改Root密码
ERROR 1819 (HY000): Your password does notsatisfy the current policy requirements
报错–注意:【mysql8.0以上密码策略限制必须要大小写加数字特殊符号】 正确操作如下:
mysql> alter user'root'@'%' IDENTIFIED BY 'MyNewPass@123';
Query OK, 0 rows affected (0.05 sec)
mysql>quit
退出,在my.cnf中把Skip-grant-table语句删除,重新启动数据库;
[root@localhost mysql]# systemctl restart mysqld;
[root@localhost mysql]# mysql -uroot –pMyNewPass@123;
接下来我们创建Root用户
mysql> create user 'root'@'localhost' identified by 'MyNewPass@123';
Query OK, 0 rows affected (0.10 sec)
root用户是必须创建的,当然你也可以创建其他用户;例如:
mysql> create user 'user'@'localhost' identified by 'MySecondPwd@123';
Query OK, 0 rows affected (0.10 sec)
设置允许远程访问MySQL:
mysql>grant all privileges on *.* to ‘root'@'%' with grant option;
Query OK, 0 rows affected (0.10 sec)
其他:
使用Navicat远程连接mysql时会出现以下问题;
解决方法:
登入mysql后输入:
mysql>alter user 'root'@'%' identified with mysql_native_password by 'MyNewPass@123';
#更新一下用户的密码, root用户密码为MyNewPass@123
再次使用Navicat连接
连接成功!
希望对大家有所帮助!