CentOs7下使用命令安裝mysql

一、檢查是否有自帶mariadb

CentOS7 一般yum安裝包中有自帶的mariadb,不過想必大家更喜歡用mysql。
記錄一下我在centos7系統上安裝mysql5.7的步驟。
1、卸載原系統中的mariadb……

首先執行命令rpm -qa|grep mariadb查看是否有mariadb的安裝包,若沒有可以無視,直接進入第二,安裝mysql 5.7。

rpm -qa|grep mariadb

接下來,執行rpm -e --nodeps mariadb-libs刪除它

rpm -e --nodeps mariadb-libs

二、下載mysql 5.7安裝包

1、前往官方網站複製yum源鏈接MySQL官網,或是直接複製我下方命令的也可
在這裏插入圖片描述
2、執行如下命令下載

wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm

複製的鏈接因版本問題會稍有不同,如果你是複製官網的鏈接,後面幾步需要注意自行換一下路徑。

執行完後可用ls查看是否成功
在這裏插入圖片描述
3、進行yum源安裝

執行命令

rpm -ivh mysql80-community-release-el7-3.noarch.rpm

我遇到的問題
[root@localhost ~]# rpm -ivh mysql80-community-release-el7-3.noarch.rpm
error: Failed dependencies:
mysql-community-release conflicts with mysql80-community-release-el7-3.noarch

[root@localhost ~]# rpm -e mysql-community-release --nodeps

解決方法
用rpm -e confictcompoent – nodeps解決。如下,根據命令行的報錯,把你命令行出現的替換掉“confictcompoent”。

如我的命令是

rpm -e mysql-community-release -- nodeps

在這裏插入圖片描述
接下來可以通過yum repolist all | grep mysql查看yum源中的mysql安裝包

yum repolist all | grep mysql

在這裏插入圖片描述
4、進行mysql安裝

可以看到yum源中默認啓用的安裝包版本爲MySQL8.0,如果需要切換爲5.7,需要運行以下命令;

yum-config-manager --disable mysql80-community
yum-config-manager --enable mysql57-community

注意:yum-config-manager默認使用的是python2版本環境,如果用戶使用這個命令時報錯,可能是因爲當前默認python版本爲python3版本。需要在/bin/yum-config-manager文件中修改文件頭#!/usr/bin/python -tt爲#!/usr/bin/python2 -tt
在這裏插入圖片描述
接下來可以開始進行安裝步驟,執行命令

yum install mysql-community-server

進行安裝,需要依賴安裝時選擇y就ok
在這裏插入圖片描述
5、 啓動mysql服務

執行命令systemctl start mysqld.service來啓動mysql服務,systemctl status mysqld.service可查看mysql服務運行狀態

systemctl start mysqld.service #啓動mysql服務
systemctl status mysqld.service #查看mysql服務狀態

在這裏插入圖片描述
之後輸入命令,回車,即可進入數據庫

mysql -u root -p

在這裏插入圖片描述
接下來就可以使用簡單命令去創建數據庫了
在這裏插入圖片描述
我根據這篇文章CentOs7成功安裝mysql5.7裏的做法做到這一步,下面一部分就沒有按照文章的做了,根據自己實際情況需要,可以繼續往下做。童鞋們也可以跟着我做到這一步,然後直接跳到三、授權遠程登錄mysql,我的需求是希望通過本地連接虛擬機裏安裝的mysql數據庫,如果你有需要就拉到後面看看吧

\color{red}{\heartsuit}

MySQL服務器初始化(從MySQL 5.7開始):在服務器初始啓動時,如果服務器的數據目錄爲空,則會發生以下情況:

  • 服務器已初始化。
  • 在數據目錄中生成SSL證書和密鑰文件。
  • validate_password插件安裝並啓用。
  • 將’root’@‘localhost’ 創建一個超級用戶帳戶。設置超級用戶的密碼並將其存儲在錯誤日誌文件中。要顯示它,請使用以下命令:
grep 'temporary password' /var/log/mysqld.log

通過使用生成的臨時密碼登錄併爲超級用戶帳戶設置自定義密碼,儘快更改root密碼

mysql -u root -p

輸入你設置的臨時密碼

ALTER USER 'root'@'localhost' IDENTIFIED BY '您的密碼';

注意
MySQL的validate_password插件默認安裝。這將要求密碼包含至少一個大寫字母,一個小寫字母,一個數字和一個特殊字符,並且密碼總長度至少爲8個字符。
如果您需要修改簡單密碼,可以依次執行以下操作步驟:

set global validate_password_policy=0;
set global validate_password_length=1;
set global validate_password_mixed_case_count=2;

– 然後進行密碼更改

ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

這時候MySQL基本上就配置完成了

查看數據庫初始密碼密碼:grep ‘temporary password’ /var/log/mysqld.log
登錄:mysql -uroot -p
輸入你自己的密碼

進入數據庫修改密碼步驟:
step 1:SET PASSWORD = PASSWORD(‘your new password’);
step 2:ALTER USER ‘root’@‘localhost’ PASSWORD EXPIRE NEVER;
step 3:flush privileges;

最好重啓一下數據庫

systemctl restart mysqld.service

如果你希望啓動centos系統時,同時啓動mysql可以執行這個命令,開機自啓動。

chkconfig mysql on

\color{red}{\heartsuit}

三、授權遠程登錄mysql

以下部分是介紹授權遠程登錄,以Navicat工具爲主

給mysql創建遠程登錄賬戶admin

使用mysql數據庫(真正的數據庫,而非數據庫軟件),將所有數據庫的所有表(.)的所有權限(all privileges),授予通過任何ip(%)訪問的admin用戶,密碼爲admin,最後刷新(flush privileges)即可。

mysql> GRANT ALL PRIVILEGES ON *.* TO 'admin'@'%' IDENTIFIED BY 'admin' WITH GRANT OPTION;

mysql> flush privileges; #刷新數據庫

在這裏插入圖片描述
mysql> GRANT ALL PRIVILEGES ON . TO ‘admin’@’%’ IDENTIFIED BY ‘admin’ WHIT GRANT OPTION;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘WHIT GRANT OPTION’ at line 1
好吧,我寫錯了一個字符with┭┮﹏┭┮

注意:在執行mysql命令時,要帶分號“;”,分號爲命令結束的標識。

修改mysql的字符集

cp -rf /usr/share/mysql/my-medium.cnf /etc/my.cnf

這裏可能會出現報錯,no such files or directory的錯誤,這時你要進去/usr/share/mysql/查看該目錄下是否存在my-medium.cnf文件,我的就沒有,但是我的etc/目錄下有my.cnf文件,於是我直接vi編輯該文件
修改my.cnf文件。

在該文件末尾加上字符的編碼標識符,設置如下
進入linux終端輸入下面代碼進入vi編輯器
vi /etc/my.cnf
然後按i進入編輯狀態,按照以下規則修改文件

[client]
default-character-set=utf8
[mysqld]
character-set-server=utf8
[mysql]
default-character-set=utf8

修改好後退出,需要重啓mysql

service mysql restart
或
systemctl restart mysqld.service

查看字符集,終端再次進入mysql,輸入

mysql> show variables like 'character%';

如果字符集顯示爲utf-8,即表示修改成功。
在這裏插入圖片描述
因爲系統之間的默認字符集不一樣

之後在mac電腦的Navicat遠程連接,填上主機、端口號、你設置的用戶名和密碼。可以發現連接成功啦~~

不知道主機的可通過ifconfig命令查看。如果遇到連接不成功,很可能是需要關閉centos的防火牆,怎麼關閉請看這篇☞centos7用命令關閉防火牆

在這裏插入圖片描述
測試環境搭建篇,mysql的安裝配置就到此啦~

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章