Centos7安裝mysql5.7

一、環(huán)境

操作系統(tǒng)

[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core) 

將要安裝的mysql版本

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.7.18    |
+-----------+
1 row in set (0.00 sec)

二、安裝

在任意目錄執(zhí)行下述三句命令,即可完成安裝mysql。

(1)下載
以下命令是從官網(wǎng)下載mysql的rmp package并保存在當(dāng)前目錄(保存在任意位置均可,但第二步中的安裝repo命令也要在當(dāng)前下載目錄執(zhí)行)。可以從官網(wǎng)找到最新的各個(gè)版本的安裝包,如果安裝其他版本可以將命令中的版本信息替換掉。

[root@localhost ~]# wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm

(2)安裝repo

[root@localhost ~]# rpm -ivh mysql57-community-release-el7-9.noarch.rpm

(3)安裝mysql-server

[root@localhost ~]# yum install mysql-server

三、設(shè)置密碼

嚴(yán)格按照步驟來

在上一步安裝完成后,啟動(dòng)mysql后會(huì)發(fā)現(xiàn),直接輸入mysql,會(huì)發(fā)現(xiàn)直接就進(jìn)入了,或者輸入mysql -u root -p,讓輸入密碼時(shí),不輸入任何字符直接按enter鍵就可以直接進(jìn)入了。說明初次安裝mysql時(shí),root賬戶沒有密碼。

在設(shè)置密碼時(shí),踩了很多坑,mysql5.7與mysql5.6的密碼設(shè)置方式存在差異,以下是5.7版本的設(shè)置方式:

(1)跳過mysql密碼驗(yàn)證

打開mysql配置文件my.cnf:
[root@localhost ~]# vim /etc/my.cnf 

打開后,在[mysqld]下方插入以下內(nèi)容:
skip-grant-tables
skip-networking

(2)啟動(dòng)mysql,并匿名登錄

啟動(dòng)mysql服務(wù):
[root@localhost ~]# service mysqld start

匿名登錄mysql:
[root@localhost ~]# mysql

(3)在mysql中執(zhí)行下述兩條命令

//修改密碼
mysql> update mysql.user set authentication_string=PASSWORD('你的密碼') where user='root' and host='localhost';

//權(quán)限賬號(hào)信息是在MYSQLD服務(wù)啟動(dòng)的時(shí)候就加載到內(nèi)存中的
//所以在原權(quán)限表中的任何直接修改都不會(huì)直接生效。
//用下述命令把表中的信息更新到內(nèi)存
mysql> flush privileges;

(4)取消跳過mysql密碼認(rèn)證:

打開mysql配置文件my.cnf:
[root@localhost ~]# vim /etc/my.cnf 

打開后,將之前在[mysqld]下方插入的內(nèi)容注釋掉或刪掉
#skip-grant-tables
#skip-networking

(5)重啟mysql

[root@localhost ~]# service mysqld restart

(6)進(jìn)入mysql,通過ALTER的方式再次修改密碼

//將mysql的密碼強(qiáng)度級(jí)別設(shè)置為 LOW(密碼任意,但長(zhǎng)度在 8 位或以上)
mysql> set global validate_password_policy=0;  

//如果想要設(shè)置的密碼少于8位,請(qǐng)執(zhí)行下述命令(最少是4)
mysql> set global validate_password_length=4;  

//通過ALTER的方式再次修改密碼
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '你的密碼'

至此,完成密碼的設(shè)置。

四、遠(yuǎn)程連接

//進(jìn)入mysql,執(zhí)行以下語(yǔ)句
mysql> GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
//上述命令的意思是允許myuser用戶使用mypassword從任何主機(jī)連接到mysql服務(wù)器
//假如我們想讓root用戶使用密碼123456從任何主機(jī)連接到mysql服務(wù)器,則可以將上述命令修改為:
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

參考

1、Centos 7 使用Yum 安裝 MySQL
2、mysql 5.7 設(shè)置root密碼方法
3、centos7 mysql數(shù)據(jù)庫(kù)安裝和配置
4、解決 MySQL 5.7 中 Your password does not satisfy the current policy requirements. 問題
5、mysql 遠(yuǎn)程訪問不行解決方法 Host is not allowed to connect to this MySQL server

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

推薦閱讀更多精彩內(nèi)容