Linux下安裝MySQL你又踩過多少坑【宇宙最全教程】

SportSky發表於2022-03-08

一、檢查以前是否安裝過MySql

因為cnetos7一般預設安裝mariadb,所以要檢查mysql或者mariadb是否安裝

rpm -pa | grep -i mysql

rpm -pa | grep -i mariadb

結果:

 

 二、發現有的話就都解除安裝

rpm -e --nodeps 需要解除安裝的檔名

三、刪除老版本MySQL的開發標頭檔案和庫

rm -rf  /etc/my.cnf

rm -rf  /var/lib/mysql

注意:解除安裝後/var/lib/mysql中的資料及/etc/my.cnf不會刪除,確定沒用後就收工刪除

四、準備安裝包

可以根據自己的需要選擇自己版本的安裝包,一般企業用的是5.7+以上的版本,所以我這裡下載的是5.7.2的版本,官方下載:https://downloads.mysql.com/archives/community/  

我是自己手動下載之後再上傳到虛擬機器伺服器,同志們也可以根據wget進行下載,各取所需

解壓壓縮包

tar -xvf mysql-5.7.20-1.el7.x86_64.rpm-bundle.tar

 

 

 

 

 

 五、安裝相應的依賴包

yum install perl

yum install net-tools

六、安裝Client & Server 

依次執行下列命令進行安裝:

rpm -ivh mysql-community-common-5.7.20-1.el7.x86_64.rpm

rpm -ivh mmysql-community-libs-5.7.20-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.20-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.20-1.el7.x86_64.rpm

 

七、開啟MySql服務

1、檢視mysql服務狀態:

systemctl status mysqld

service mysql status

 

 2、啟動mysql

-- 啟動
systemctl start mysqld


-- 重啟
systemctl restart mysqld

 

 八、登入

1、免密碼登入設定,修改配置檔案 vi /etc/my.cnf ,找到 [mysqld] ,在下面一行新增 skip-grant-tables ,然後":wq"儲存

 2、重啟mysql 服務 systemctl restart mysqld 然後 輸入命令 mysql

如下圖說明登入成功

 

 

 3、選擇當前資料庫 use mysql;

 

 

 4、修改root密碼

update user set authentication_string=PASSWORD(新密碼) where user='root';

5、重新整理許可權

flush privileges;

6、編輯配置檔案/etc/my.cnf 取消 skip-grant-tables

7、重啟mysql服務 再次登入 mysql -uroot -p回車,輸入剛剛修改的密碼然後回車

 

 

九、設定root使用者允許遠端連線

GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '密碼' WITH GRANT OPTION;

flush privileges;

 

 

十、檢視防火牆資訊並開放埠

前面步驟都執行完之後,就是要開啟防火牆並開通mysql 預設埠3306,傻瓜式執行下面幾個命令就行,不要問我為什麼,執行就完事

1、檢視防火牆狀態
systemctl status firewalld

2、如果不是顯示active狀態,需要開啟防火牆
systemctl start firewalld

3、檢視所有已開放的臨時埠(預設為空)
firewall-cmd --list-ports

4、 檢視所有永久開放的埠(預設為空)
firewall-cmd --list-ports --permanent

5、新增永久開放的埠(例如:3306埠)
firewall-cmd --add-port=3306/tcp --permanent

6、配置結束後需要輸入過載命令並重啟防火牆以生效配置
firewall-cmd --reload
systemctl restart firewalld

十一、遠端登入連線

我使用的是Navicat Premium 16工具進行連線的

 

 

 

 

 十二、修改資料庫的預設編碼 和執行引擎

1、先登入檢視,資料庫的字元編碼,命令 :show variables like '%char%';

 

 2、修改配置檔案 /ect/my.cnf,將如下配置新增到配置檔案

[mysqld]
lower_case_table_names = 1 # 配置表明不區分大小寫 1不區分,0區分
character-set-server = utf8 # 設定預設編碼為utf8
init_connect = 'SET NAMES utf8'
max_connections = 1024 # 最大連線數
default-storage-engine = INNODB
collation-server = utf8_general_ci

[client]
default-character-set=utf8 # 設定預設編碼為utf8

 

 

 

 參考學習連結

https://www.bilibili.com/video/BV1di4y1s77q?spm_id_from=333.788.top_right_bar_window_history.content.click

http://t.zoukankan.com/mihoutao-p-13254367.html

################################大功告成##########################################

 

相關文章