CentOS 7下yum安裝與配置MySQL 5.7

CentOS7默認(rèn)數(shù)據(jù)庫(kù)是mariadb,配置等用著不習(xí)慣,因此決定改成mysql,但是CentOS7的yum源中默認(rèn)好像是沒(méi)有mysql的。為了解決這個(gè)問(wèn)題,我們要先下載mysql的repo源。

1.下載mysql的repo源

$ wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

2.安裝mysql-community-release-el7-5.noarch.rpm包

$ sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

安裝這個(gè)包后,會(huì)獲得兩個(gè)mysql的yum repo源:/etc/yum.repos.d/mysql-community.repo,/etc/yum.repos.d/mysql-community-source.repo。

3.安裝mysql

$ sudo yum install mysql-server

根據(jù)提示安裝就可以了,不過(guò)安裝完成后沒(méi)有密碼,需要重置密碼

4.重置mysql密碼

$ mysql -u root

登錄時(shí)有可能報(bào)這樣的錯(cuò):ERROR 2002 (HY000): Can‘t connect to local MySQL server through socket ‘/var/lib/mysql/mysql.sock‘ (2),原因是/var/lib/mysql的訪問(wèn)權(quán)限問(wèn)題。下面的命令把/var/lib/mysql的擁有者改為當(dāng)前用戶:

$ sudo chown -R root:root /var/lib/mysql

重啟mysql服務(wù)

$ service mysqld restart

設(shè)置登錄密碼:

$vi /etc/my.cnf

最后一行加入:skip-grant-tables

重啟mysql

$service mysqld restart

直接回車進(jìn)入mysql控制臺(tái)

$ mysql -u root??

切換數(shù)據(jù)庫(kù)

mysql > use mysql;

更新root密碼

mysql > update mysql.user set authentication_string=password('123456') where user='root' and Host = 'localhost';

重啟數(shù)據(jù)庫(kù)

$service mysqld restart

登錄數(shù)據(jù)

$ mysql -u root -p123456

在切換數(shù)據(jù)庫(kù)的時(shí)候需要再改一下密碼

mysql> use mysql;

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

更新一下密碼

mysql> SET PASSWORD = PASSWORD('123456');

可以切換數(shù)據(jù)庫(kù)了

mysql> use mysql;

插入新用戶

mysql>create user 'test'@'%' identified by '456789';



注:密碼的復(fù)雜度與validate_password_policy的值有關(guān),如果密碼夠復(fù)雜請(qǐng)忽略本段。

validate_password_policy有以下取值:

PolicyTests Performed

0orLOWLength

1orMEDIUMLength; numeric, lowercase/uppercase, and special characters

2orSTRONGLength; numeric, lowercase/uppercase, and special characters; dictionary file

默認(rèn)是1,即MEDIUM,所以剛開(kāi)始設(shè)置的密碼必須符合長(zhǎng)度,且必須含有數(shù)字,小寫(xiě)或大寫(xiě)字母,特殊字符。

有時(shí)候,只是為了自己測(cè)試,不想密碼設(shè)置得那么復(fù)雜,譬如說(shuō),我只想設(shè)置root的密碼為123456。

必須修改兩個(gè)全局參數(shù):

首先,修改validate_password_policy參數(shù)的值

mysql>setglobal validate_password_policy=0;

Query OK,0rows affected (0.00sec)

這樣,判斷密碼的標(biāo)準(zhǔn)就基于密碼的長(zhǎng)度了。這個(gè)由validate_password_length參數(shù)來(lái)決定。


設(shè)置用戶權(quán)限

mysql >GRANT ALL ON *.* TO 'test'@'%';

如果是阿里云服務(wù)器需要在安全組打開(kāi)3306端口,然后就可以連接了

mysql > exit;

打完,收工

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容