1. 準(zhǔn)備工作?
1.1 安裝CentOS虛擬機(jī)????????
?教程[點(diǎn)擊跳轉(zhuǎn)]
1.2 將CentOS虛擬機(jī)設(shè)置為靜態(tài)IP,否則你每次重啟虛擬機(jī)后連接數(shù)據(jù)庫都要重新查IP
?教程[點(diǎn)擊跳轉(zhuǎn)]
1.3 如果有安裝過MySQL,請先卸載MySQL
?教程[點(diǎn)擊跳轉(zhuǎn)]
1.4 虛擬機(jī)執(zhí)行命令su切換到root賬號(hào)(輸入密碼時(shí)不會(huì)顯示密碼,實(shí)際已經(jīng)輸入)
su
2.安裝MySQL(本文以CentOS 7下安裝MySQL 8為例)
2.1 刪除mariadb數(shù)據(jù)庫軟件包
2.1.1 執(zhí)行命令rpm -qa|grep mari查詢mariadb數(shù)據(jù)庫軟件包
????????mariadb是CentOS自帶的數(shù)據(jù)庫,裝MySQL前要先卸載,但不一定每一個(gè)CentOS鏡像都有自帶mariadb數(shù)據(jù)庫,如果查到?jīng)]有則直接跳過此步
#查詢mariadb數(shù)據(jù)庫軟件包
rpm -qa|grep mari

2.1.2 執(zhí)行命令rpm -e --nodeps 包名來刪除軟件包
#刪除軟件包
rpm -e --nodeps marisa-0.2.4-4.el7.x86_64 #包名用你自己查詢到的
rpm -e --nodeps mariadb-libs-5.5.68-1.el7.x86_64 #包名用你自己查詢到的
2.2 安裝MySQL
2.2.1 執(zhí)行命令wget -c 鏈接下載rpm源(根據(jù)CentOS版本自行選擇)
#CentOS8 mysql8 rpm源
wget -c https://dev.mysql.com/get/mysql80-community-release-el8-5.noarch.rpm
#CentOS7 mysql8 rpm源
wget -c https://dev.mysql.com/get/mysql80-community-release-el7-7.noarch.rpm
#CentOS6 mysql8 rpm源
wget -c https://dev.mysql.com/get/mysql80-community-release-el6-7.noarch.rpm
#如果wget命令無效,先執(zhí)行下面這個(gè)命令安裝wget
yum -y install wget
2.2.2?執(zhí)行命令rpm -ivh 包名安裝rpm源(根據(jù)下載的rpm源自行選擇)
#CentOS8 安裝mysql8
rpm -ivh mysql80-community-release-el8-5.noarch.rpm
#CentOS7 安裝mysql8
rpm -ivh mysql80-community-release-el7-7.noarch.rpm
#CentOS6 安裝mysql8
rpm -ivh mysql80-community-release-el6-7.noarch.rpm
2.2.3?執(zhí)行命令yum -y install mysql-server安裝mysql服務(wù)
#安裝mysql服務(wù)
yum -y install mysql-server
2.3 啟動(dòng)MySQL
2.3.1 執(zhí)行命令systemctl start mysqld啟動(dòng)MySQL
#查看mysql運(yùn)行狀態(tài)
systemctl status mysqld
#啟動(dòng)mysql
systemctl start mysqld
#停止mysql
systemctl stop mysqld
#重啟mysql
systemctl restart mysqld
2.3.2 執(zhí)行命令systemctl enable mysqld開啟MySQL開機(jī)自啟動(dòng)
#開啟mysql開機(jī)自啟動(dòng)
systemctl enable mysqld
#關(guān)閉mysql開機(jī)自啟動(dòng)
systemctl disable mysqld
2.4 設(shè)置MySQL密碼
2.4.1?執(zhí)行下方命令獲取臨時(shí)密碼
//獲取MySQL臨時(shí)密碼
grep 'temporary password' /var/log/mysqld.log

2.4.2?執(zhí)行命令mysql -uroot -p登錄MySQL(密碼是上面獲取的臨時(shí)密碼)
//登錄mysql
mysql -uroot -p
2.4.3 用臨時(shí)密碼登錄后執(zhí)行下方命令設(shè)置MySQL永久密碼
//根據(jù)下圖中的密碼策略設(shè)置mysql數(shù)據(jù)庫密碼(你不設(shè)置密碼就無法進(jìn)行其它操作)
alter user 'root'@'localhost' identified by 'password@0';
????????你的密碼不符合默認(rèn)密碼策略的話是無法設(shè)置成功的,mysql8默認(rèn)密碼策略如下圖(最小8位,至少含義一個(gè)數(shù)字,至少含義一個(gè)特殊字符)?
2.4.4 執(zhí)行下方命令修改密碼策略
????????只能臨時(shí)修改密碼策略,重啟MySQL后自動(dòng)恢復(fù)默認(rèn)密碼策略,想要永久修改需要改MySQL配置文件,一般來說臨時(shí)修改密碼策略就夠了,又不天天改密碼
//設(shè)置密碼長度
set global validate_password.length = 6;
//設(shè)置密碼風(fēng)險(xiǎn)等級(jí)(等級(jí)越高要求密碼越復(fù)雜),分為0、1、2級(jí)
set global validate_password.policy = 0;
//查詢密碼策略
show variables like 'validate_password.%';
2.4.5 修改完密碼策略后執(zhí)行下方命令重新設(shè)置你的MySQL密碼
//設(shè)置mysql數(shù)據(jù)庫密碼 (這里是密碼)
alter user 'root'@'localhost' identified by '123456';
2.5 允許外部訪問該MySQL數(shù)據(jù)庫
2.5.1 依次執(zhí)行下方命令即可允許外部訪問該MySQL數(shù)據(jù)庫
//創(chuàng)建用戶
(遠(yuǎn)程連接用的賬號(hào)) (遠(yuǎn)程連接用的密碼)
create user 'root'@'%' identified by 'mypassword';
//分配權(quán)限,運(yùn)行遠(yuǎn)程連接
(允許root賬號(hào)遠(yuǎn)程連接)
grant all privileges on *.* to 'root'@'%' with grant option;
//刷新權(quán)限
flush privileges;
2.5.2?嘗試用Navicat連接虛擬機(jī)上的MySQL數(shù)據(jù)庫,但是連接失敗,這是CentOS的防火墻導(dǎo)致的,所以無法連接
2.6 防火墻(CentOS7)
????????CentOS7和CentIOS6防火墻命令不一樣,CentOS6防火墻命令請自行查找
2.6.1 執(zhí)行下方命令直接關(guān)閉防火墻(不推薦,不安全)
#關(guān)閉防火墻
systemctl stop firewalld.service
2.6.2 執(zhí)行下方命令開啟指定端口允許外部訪問
#永久允許該端口被外部訪問(3306是MySQL默認(rèn)端口號(hào))
firewall-cmd --permanent --add-port=3306/tcp
#重啟防火墻
firewall-cmd --reload
修改MySQL端口號(hào)教程[點(diǎn)擊跳轉(zhuǎn)]?文章來源:http://www.zghlxwxcb.cn/news/detail-655281.html
2.6.3 防火墻命令概覽
#關(guān)閉防火墻
systemctl stop firewalld.service
#禁止防火墻開機(jī)自啟動(dòng)
systemctl disable firewalld.service
#永久允許該端口被外部訪問
firewall-cmd --permanent --add-port=3306/tcp
#臨時(shí)允許該端口被外部訪問
firewall-cmd --add-port=3306/tcp
#禁止該端口被外部訪問
firewall-cmd --remove-port=3306/tcp
#重啟防火墻
firewall-cmd --reload
2.7 重新遠(yuǎn)程連接MySQl數(shù)據(jù)庫
?Navicat下載[點(diǎn)擊跳轉(zhuǎn)]文章來源地址http://www.zghlxwxcb.cn/news/detail-655281.html

到了這里,關(guān)于Linux(CentOS)安裝MySQL教程的文章就介紹完了。如果您還想了解更多內(nèi)容,請?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!