1. 程式人生 > >Linux CentOS 7環境下安裝MySQL

Linux CentOS 7環境下安裝MySQL

在CentOS 7中預設安裝有MariaDB,但是我們需要的是MySQL,安裝MySQL可以覆蓋MariaDB。

(注:MariaDB資料庫管理系統是MySQL的一個分支,主要由開源社群在維護,採用GPL授權許可。開發這個分支的原因之一是:甲骨文公司收購了MySQL後,有將MySQL閉源的潛在風險,因此社群採用分支的方式來避開這個風險。MariaDB的目的是完全相容MySQL,包括API和命令列,使之能輕鬆成為MySQL的代替品。)

首先需要安裝MySQL的Yum Repository。

(注:Yum幫我們管理好了各種rpm包的依賴,是基於rpm的軟體包管理器,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。)

所有的操作都是切換到root使用者下進行:

1.安裝MySQL官方的Yum Repository

[[email protected] ~]# wget -i -c http://dev.mysql.com/get/mysql57-community-release-el7-10.noarch.rpm

2.下載rpm包

[[email protected] ~]# yum -y install mysql57-community-release-el7-10.noarch.rpm

3.安裝MySQL服務

[[email protected] ~]# yum -y install mysql-community-server

執行安裝服務的時間比較長,耐心等待,中間有一次詢問y/n?輸入y回車。

4.啟動mysql服務

[[email protected] ~]# systemctl start  mysqld.service

5.檢視mysql執行狀態

[[email protected] ~]# systemctl status mysqld.service

可以看到mysql服務的執行狀態,出現下面的資訊,其中Active後面代表狀態,啟動服務後為active (running),停止後為inactive (dead)。

重新啟動服務:service mysqld restart         停止服務:systemctl stop mysqld.service

6.安裝完成後預設有一個root使用者,初始密碼已經設定好,我們需要獲得這個初始密碼登入後再對其進行修改。通過下面的命令檢視初始密碼,冒號後面的字元就是密碼

[[email protected] ~]# grep 'temporary password' /var/log/mysqld.log

(注:為了加強安全性,MySQL5.7為root使用者隨機生成了一個密碼,在error log中,關於error log的位置,如果安裝的是RPM包,則預設是/var/log/mysqld.log。只有啟動過一次mysql才可以檢視臨時密碼。)

7.登入root使用者

[[email protected] ~]# mysql -u root -p

(注:提示輸入密碼,輸入初始密碼,使用該密碼之後需要設定自己的密碼,但是mysql對密碼有要求,我們想要設定簡單的密碼必須要修改約束,修改兩個全域性引數。)

(1)validate_password_policy代表密碼策略,預設是1指符合長度,且必須含有數字,小寫或大寫字母,特殊字元。設定為0判斷密碼的標準就基於密碼的長度了:

mysql> set global validate_password_policy=0;

(2)validate_password_length代表密碼長度,最小值為4:

mysql> set global validate_password_length=4;

(3)修改密碼為root,之後就可以使用該密碼登入了:

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

8.使用資料庫

[[email protected] ~]# mysql -uroot -proot

(注:如果遠端連線資料庫時,出現不允許訪問的時候,需要對連線使用者賦予許可權。
進入mysql後依次輸入一下命令:
grant all privileges on *.* to 'root'@'%' identified by '資料庫密碼' with grant option;
flush privileges;
許可權重新整理之後,重啟mysql服務。)

在CentOS7中mysql的主要配置所在的目錄:

1./etc/my.cnf 這是mysql的主配置檔案

注:編碼問題解決辦法

[[email protected] ~]# vim /etc/my.cnf

新增內容

[client]
default-character-set=utf8
 
[mysqld]
character-set-server=utf8
collation-server=utf8_general_ci

重啟MySQL,然後進入MySQL檢視編碼。

2./var/lib/mysql mysql資料庫的資料庫檔案存放位置

3./var/log mysql資料庫的日誌輸出存放位置