前言
本文使用的操作系統(tǒng):
名稱 | 描述 | 文章 |
---|---|---|
Oracle VM VirtualBox | 虛擬機(jī)軟件 | VirtualBox 使用介紹 |
CentOS-7-x86_64-Minimal-2009.iso | CentOS 7.9 最小化安裝鏡像文件 | VirtualBox 安裝 CentOS 7 |
最開始學(xué)習(xí) mysql 的時(shí)候,是在 windows 系統(tǒng)中,使用 mysql 壓縮包,將 mysql 安裝為系統(tǒng)服務(wù)
但在 linux 系統(tǒng)中,你可能不是很明確安裝流程,本文記錄其中一種方式,使用 yum 源安裝 mysql,適用于 centos 系統(tǒng)
安裝 mysql
1. 卸載系統(tǒng)自帶 mariadb
查看并卸載系統(tǒng)自帶的 MariaDB 數(shù)據(jù)庫(kù)
rpm -qa | grep mariadb
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64
2. 下載 mysql 官網(wǎng) yum 源
由于 centos 的 yum 源中沒(méi)有 mysql,需要到 mysql 官網(wǎng)下載 yum repo 配置文件
# wget 未安裝時(shí)執(zhí)行,已安裝跳過(guò)即可
yum install wget -y
# 下載 mysql 的 yum 源配置
wget http://dev.mysql.com/get/mysql57-community-release-el7-11.noarch.rpm
3. 安裝 mysql 官方的 yum 源
運(yùn)行以下命令
yum -y install mysql57-community-release-el7-11.noarch.rpm
[root@localhost ~]# yum -y install mysql57-community-release-el7-11.noarch.rpm
已加載插件:fastestmirror
正在檢查 mysql57-community-release-el7-11.noarch.rpm: mysql57-community-release-el7-11.noarch
mysql57-community-release-el7-11.noarch.rpm 將被安裝
....
....
已安裝:
mysql57-community-release.noarch 0:el7-11
完畢!
命令執(zhí)行完成后會(huì)在 /etc/yum.repos.d
目錄下生成兩個(gè) repo 文件,如下圖所示
4. 使用 yum 的方式安裝 mysql
運(yùn)行以下命令安裝
yum install mysql-server -y
安裝過(guò)程中如果出現(xiàn)以下錯(cuò)誤,運(yùn)行下面的命令可以解決
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
[root@localhost ~]# yum -y install mysql-server
...
...
mysql-community-server-5.7.44-1.el7.x86_64.rpm 的公鑰尚未安裝
失敗的軟件包是:mysql-community-server-5.7.44-1.el7.x86_64
GPG 密鑰配置為:file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql
使用 mysql
a. 啟動(dòng) mysql
# 啟動(dòng) mysql 服務(wù)
systemctl start mysqld
# 查看 mysql 服務(wù)狀態(tài)
systemctl status mysqld
b. 獲取臨時(shí)密碼
運(yùn)行以下命令可以查看臨時(shí)密碼,如下圖所示,臨時(shí)密碼為:u)dJt5Wehpmi
cat /var/log/mysqld.log | grep password
c. 修改登錄密碼
使用剛才的臨時(shí)密碼登錄 mysql
mysql -uroot -p
使用以下命令修改密碼,Liang1016@
是我設(shè)置的密碼
ALTER USER 'root'@'localhost' IDENTIFIED BY 'Liang1016@';
當(dāng)密碼過(guò)于簡(jiǎn)單時(shí),可能會(huì)遇到下面的錯(cuò)誤提示,這是 mysql 的密碼安全策略
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Liang1016@';
Query OK, 0 rows affected (0.00 sec)
如果要設(shè)置簡(jiǎn)單的密碼,先運(yùn)行以下命令,就可以使用長(zhǎng)度大于等于6的簡(jiǎn)單密碼了
set global validate_password_policy = 0;
set global validate_password_length = 6;
d. 設(shè)置遠(yuǎn)程訪問(wèn)
開啟 mysql 的遠(yuǎn)程訪問(wèn)權(quán)限
-- 賦予 root 用戶外部訪問(wèn)權(quán)限,123456 是 root 用戶的密碼
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
-- 刷新權(quán)限
flush privileges;
開放防火墻端口 3306,此時(shí)同一局域網(wǎng)下的電腦就可以通過(guò)局域網(wǎng) IP 連接我的 mysql 了
# 查看防火墻狀態(tài)
firewall-cmd --state
# 開放 3306 端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent
# 立即生效
firewall-cmd --reload