安裝環境
linux版本:CentOS 7.6 x64
Mysql:8.0
在CentOS中默認安裝有MariaDB,但是我們需要的是MySQL,安裝MySQL可以覆蓋MariaDB.
MariaDB數據庫管理系統是MySQL的一個分支,主要由開源社區在維護,采用GPL授權許可。開發這個分支的原因之一是:甲骨文公司收購了MySQL后,有將MySQL閉源的潛在風險,因此社區采用分支的方式來避開這個風險。MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能輕松成為MySQL的代替品。
安裝步驟
1.從Mysql官網下載MySQL的Yum Repository。根據CentOS和Mysql的版本,選擇下載相對應的文件。本文選擇紅色方框的文件。
Yum幫我們管理好了各種rpm包的依賴,是基於rpm的軟件包管理器,能夠從指定的服務器自動下載RPM包並且安裝,可以自動處理依賴性關系,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝.
下載命令:
wget https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm
2.用yum命令安裝下載好的rpm包。
yum -y install mysql80-community-release-el7-2.noarch.rpm
3.安裝MySQL服務器。
yum -y install mysql-community-server
這步可能會花些時間,安裝完成后就會覆蓋掉之前的mariadb。
當出現如下圖所示的內容,則代表MySQL就安裝完成了。
MySQL數據庫設置
1.啟動MySQL
systemctl start mysqld.service
2.查看MySQL運行狀態,其中Active后面代表狀態啟功服務后為active (running),停止后為inactive (dead),運行狀態如圖:
systemctl status mysqld.service
另外重新啟動Mysql和停止Mysql的命令如下:
service mysqld restart #重新啟動Mysql
systemctl stop mysqld.service #停止Mysql
3.此時MySQL已經開始正常運行,不過要想進入MySQL還得先找出此時root用戶的密碼,通過如下命令可以在日志文件中找出密碼:
為了加強安全性,MySQL8.0為root用戶隨機生成了一個密碼,在error log中,關於error log的位置,如果安裝的是RPM包,則默認是/var/log/mysqld.log。 只有啟動過一次mysql才可以查看臨時密碼
4.登錄root用戶
mysql -u root -p
然后輸入初始密碼,此時不能做任何事情,因為MySQL默認必須修改密碼之后才能操作數據庫,否則會報錯。
5.修改密碼
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'new password';
這里有個問題,新密碼設置的時候如果設置的過於簡單會報錯:
原因是因為MySQL有密碼設置的規范,具體是與validate_password_policy的值有關:
MySQL完整的初始密碼規則可以通過如下命令查看:
密碼的長度是由validate_password_length決定的,而validate_password_length的計算公式是:
validate_password_length = validate_password_number_count + validate_password_special_char_count + (2 * validate_password_mixed_case_count)
如果想要設置簡單的密碼必須要修改約束,修改兩個全局參數:
validate_password_policy代表密碼策略,默認是1:符合長度,且必須含有數字,小寫或大寫字母,特殊字符。設置為0判斷密碼的標准就基於密碼的長度了。一定要先修改兩個參數再修改密碼
mysql> set global validate_password.policy=0;
validate_password_length代表密碼長度,最小值為4
mysql> set global validate_password.length=4;
修改完,如圖
此時密碼就可以設置的很簡單,例如1234之類的。到此數據庫的密碼設置就完成了。
但此時還有一個問題,就是因為安裝了Yum Repository,以后每次yum操作都會自動更新,需要把這個卸載掉:
[root@localhost ~]# yum -y remove mysql80-community-release-el7-2.noarch
在CentOS中mysql的主要配置所在的目錄:
1 /etc/my.cnf 這是mysql的主配置文件 2 /var/lib/mysql mysql數據庫的數據庫文件存放位置 3 /var/log mysql數據庫的日志輸出存放位置