1.刪除原有的mariadb
不然安裝報錯
rpm -qa|grep mariadb
rpm -e --nodeps mariadb-libs
2. 下載RPM安裝包
在https://dev.mysql.com/downloads/mysql/選擇為Red Hat Enterprise Linux 7 / Oracle Linux 7 ,把os的版本選擇為all。 直接下載mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar,所有的rpm包都在里面,然后rpm命令安裝。
rpm -ivh mysql-community-common-5.7.21-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-5.7.21-1.el7.x86_64.rpm rpm -ivh mysql-community-devel-5.7.21-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-compat-5.7.21-1.el7.x86_64.rpm rpm -ivh mysql-community-client-5.7.21-1.el7.x86_64.rpm rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm
至此,mysql5.7所有文件安裝完畢,接下來就是開啟服務測試了
3. 啟動mysql服務
查看mysql服務是否啟動
service mysqld status
啟動服務:
systemctl start mysqld
4. 重置root密碼
MySQL5.7會在安裝后為root用戶生成一個隨機密碼,而不是像以往版本的空密碼。 可以安全模式修改root登錄密碼或者用隨機密碼登錄修改密碼。下面用隨機密碼方式
MySQL為root用戶生成的隨機密碼通過mysqld.log文件可以查找到:
grep 'temporary password' /var/log/mysqld.log
5. 修改root用戶密碼
(MySQL的密碼策略比較復雜,過於簡單的密碼會被拒絕)
1 mysql -u root -p 2 mysql> Enter password: (輸入剛才查詢到的隨機密碼) 3 mysql> SET PASSWORD FOR 'root'@'localhost'= "qaz-123"; 4 mysql> exit
6. 用root新密碼登錄
mysql -u root -pqaz-123
如果上面的方式不能修改可以使用下面安全模式修改root:
關閉服務,修改mysql配置文件:
1 systemctl stop mysqld.service 2 vi /etc/my.cnf
mysqld下面添加skip-grant-tables 保存退出啟動服務。
systemctl start mysqld.service
mysql -u root #不用密碼直接回車 use mysql update user set authentication_string=password('qaz-123') where user='root' and host='localhost'; flush privileges; exit; vi /etc/my.cnf #把 skip-grant-tables 一句刪除保存退出重啟mysql服務 systemctl restart mysqld.service
再次登錄即可
mysql -uroot -pqaz123
如果進行操作出現下面的提示:
You must reset your password using ALTER USER statement before executing this statement.
就重新設置密碼(mysql默認密碼策略比較復雜,如果設置簡單密碼,需修改默認安全策略,可以參考另外一篇文章:MYSQL57密碼策略修改)
set password = password('qaz-123');
7.開放3306端口
1 mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'qaz-123' WITH GRANT OPTION; 2 mysql>FLUSH PRIVILEGES; 3 mysql>exit;
開啟防火牆mysql 3306端口的外部訪問:
1 firewall-cmd --zone=public --add-port=3306/tcp --permanent 2 firewall-cmd --reload