MySQL:mysql是一種開放源代碼的關係型數據庫管理系統(RDBMS),使用最常用的數據庫管理語言--結構化查詢語言(SQL)進行數據庫管理。
1、基本環境檢測
關閉mysql服務(不用管提示什麼,只要執行了就行):
<code>[root@one ~]# cd /home/ [root@one home]# systemctl stop mysqld.service Failed to stop mysqld.service: Unit mysqld.service not loaded. [root@one home]# /<code>
檢測是否有安裝過的mysql程序:
<code>[root@one home]# rpm -qa | grep mysql [root@one home]# /<code>
我的linux服務器上沒有已安裝的,如果有的話就會顯示安裝包,那麼我們就應該將他們卸載掉:
<code>[root@one home]# rpm -e 程序包名字/<code>
2、下載mysql的repo源(即,新加一個yum源)
<code>[root@one home]# cd package/ [root@one package]# wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm/<code>
而後會顯示如下界面:
而後查看一下:
這個時候我們可以把第一節裡面解壓出來的nginx程序包刪除掉
<code>[root@one package]# ls mysql57-community-release-el7-8.noarch.rpm nginx-1.14.2 nginx-1.14.2.tar.gz [root@one package]# rm -rf nginx-1.14.2 [root@one package]# ls mysql57-community-release-el7-8.noarch.rpm nginx-1.14.2.tar.gz [root@one package]# /<code>
3、mysql安裝
<code>[root@one package]# rpm -ivh mysql57-community-release-el7-8.noarch.rpm [root@one package]# yum -y install mysql-server/<code>
會出現如下界面:
出現如下界面,且中途沒有 “ERROR” 字樣就表示安裝成功了
4、啟動mysql,並查驗默認密碼
<code>[root@one package]# systemctl start mysqld.service [root@one package]# cat /var/log/mysqld.log | grep password 2020-03-20T00:35:24.930864Z 1 [Note] A temporary password is generated for root@localhost: d,!HkpBli4wk [root@one package]# /<code>
可以看出我的默認密碼是:d,!HkpBli4wk
5、登錄mysql,修改默認密碼
<code>[root@one package]# mysql -uroot -p Enter password: /<code>
輸入第4步查出來的密碼,而後出現如下界面:
我們輸入命令,進行用戶密碼修改(PS:密碼一定要設立的複雜點兒,應該有默認的校驗規則):
我在此處設立的密碼是:Nihaowohao@123456
<code>mysql> alter user 'root'@'localhost' identified by 'Nihaowohao@123456'; Query OK, 0 rows affected (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> /<code>
6、修改默認端口號
<code>mysql> mysql> exit Bye [root@one package]# vim /etc/my.cnf/<code>
添加端口參數:
port=3316
而後重啟一下mysql服務,然後再檢查一下端口:
<code>[root@one package]# systemctl restart mysqld.service [root@one package]# netstat -tunlp | grep 3316 tcp6 0 0 :::3316 :::* LISTEN 34994/mysqld [root@one package]# /<code>
7、修改mysql數據庫存放位置
默認的mysql數據存放位置都是在 /var/lib/mysql ,但是實際環境中我們要找到空間最大的那個目錄,進行數據的存放,所以需要改一下mysql數據存儲目錄:
(PS:一定要記得先關閉數據庫哦)
<code>[root@one mysql]# systemctl stop mysqld.service [root@one package]# vim /etc/my.cnf/<code>
修改 datadir 和 socket 參數:
在配置文件中最後面新添加一個 [mysql] 模塊:
複製原數據存放位置到新存放位置,而後修改名字:
<code>[root@one mysql]# cp -r -p /var/lib/mysql /home/ [root@one mysql]# cd .. [root@one home]# ls mysql nginx package [root@one home]# mv mysql mysql_data [root@one home]# ls mysql_data nginx package [root@one home]# /<code>
為了驗證我們目錄確實替換成功了,可以把原目錄進行改名字,之後啟動mysql服務:
<code>[root@one home]# mv /var/lib/mysql /var/lib/mysql_back [root@one home]# systemctl status mysqld.service/<code>
出現如下界面,就說明我們成功了:
8、新增用戶,給新用戶設立遠程權限
<code>[root@one home]# mysql -uroot -p mysql> create user huaxin@localhost identified by 'Nihao@123456'; Query OK, 0 rows affected (0.00 sec) mysql> grant all privileges on *.* to huaxin@'%' identified by 'Nihao@123456'; Query OK, 0 rows affected, 1 warning (0.00 sec) mysql> flush privileges; Query OK, 0 rows affected (0.00 sec) mysql> exit Bye [root@one home]# firewall-cmd --add-port=3316/tcp --permanent success [root@one home]# firewall-cmd --reload success [root@one home]# /<code>
9、使用客戶端進行驗證
至此,mysql搭建就完事兒了。
附加:
有同學可能覺得mysql密碼複雜校驗性太難記了,但是個人建議,線上的還是複雜點兒好,不要動他。也建議從平時就習慣此操作,如果實在覺得難記,可以在mysql配置文件 /etc/my.cnf 中添加一個參數: validate_password=off
<code>[root@one home]# vim /etc/my.cnf/<code>
而後重啟mysql服務,之後再次設置密碼的時候就可以隨意設置了。
繼續加油哦~~~