? ? ? ?在經(jīng)歷了網(wǎng)上搜索的安裝教程中袭景,大部分使用了yum安裝的绒瘦,結(jié)果是不盡人意,最后轉(zhuǎn)為rpm安裝朴爬,下面寫下我的安裝過程即寒,中間綜合不同文章的方法,然后成功的在centos7中安裝了mysql 8.0.19召噩,請參考此教程的同學(xué)母赵,確認(rèn)自己是centos7系統(tǒng),并且安裝的是mysql8具滴,在安裝前請先看一遍教程再動手操作凹嘲,閱讀本教程需熟悉linux相關(guān)知識,不懂linux的同學(xué)可能會有點難理解
清理已經(jīng)存在的mysql
查詢已經(jīng)安裝的mysql
rpm -qa | grep mysql
?'xxxx'代表 rpm -qa | grep mysql 展示出來所有名字构韵,有多個周蹭,則重復(fù)多次?yum -y remove 'xxxx'?
yum -y remove 'xxxx'? ?
查找所有與mysql相關(guān)的文件
find / -name mysql
使用rm-rf時一定注意確認(rèn)路徑趋艘,確認(rèn)時上一步中查出來的路徑,復(fù)制的時候不要漏任何字符凶朗,否則會造成系統(tǒng)奔潰 瓷胧, 'xxxx'代表?find / -name mysql 展示出來所有名字,有多個棚愤,則重復(fù)多次rm -rf 'xxxx'? ?
rm -rf 'xxxx'? ? ? ? ? ? ? ? ? ? ? ??
清理已經(jīng)存在的mariadb
查詢已經(jīng)安裝的mariadb
rpm -qa | grep mariadb
'xxxx'代表?rpm -qa | grep mariadb 展示出來所有名字搓萧,有多個,則重復(fù)多次?yum -y remove 'xxxx'?
yum -y remove 'xxxx'? ? ? ??
?下載mysql安裝包
進入mysql官網(wǎng)下載宛畦,https://downloads.mysql.com/archives/community/瘸洛,復(fù)制url在瀏覽器中粘貼進入如下頁面,注意標(biāo)紅框的幾個選項
將文件放在centos服務(wù)器上有兩種方法刃永,具體如下
第一種方法:
1.可以使用圖片中的Download下載到本地電腦
2.登入centos7服務(wù)器中
3.cd /usr/local
4.mkdir mysql
5.cd mysql
6.把本地電腦下載的安裝包放到第5步的路徑下面(熟悉centos的同學(xué)可以自行選擇路徑货矮,因為安裝包使用完以后都是可以刪掉的), 具體從本地放入到服務(wù)器的方法自行百度羊精,很多種方法
第二種方法:
1.cd /usr/local
2.mkdir mysql
3.cd mysql
4.yum install wget
5.wget? https://cdn.mysql.com//Downloads/MySQL-8.0/mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar
6.第五步wget后面的具體網(wǎng)站路徑斯够,由于版本的更新可能會變化,所以可以自己獲取到具體的下載路徑使用wget下載喧锦,具體路徑可以點擊上面mysql官網(wǎng)的截圖中的download读规,然后打開瀏覽器的下載內(nèi)容頁面,然后暫停下載燃少,具體見下圖束亏,復(fù)制紅框中路徑便可,(本人使用的google瀏覽器)阵具,其他瀏覽器請自行查找
安裝mysql安裝包
?'xxxx.tar' 代表剛下載的安裝包碍遍,比如我的是 tar-xvf?mysql-8.0.19-1.el7.x86_64.rpm-bundle.tar
tar -xvf 'xxxx.tar'? ? ? ? ? ?
在centos當(dāng)前路徑下輸入? ls? 會看到下圖中的10個文件,使用rpm -ivh 安裝這10個文件,安裝順序見下圖阳液,比如? ?rpm -ivh?mysql-community-common-8.0.19-1.el7.x86_64.rpm怕敬,(因版本不同,如少于10個帘皿,則不在圖片中的安裝包不安裝即可)
安裝過程中可能出現(xiàn)以下問題东跪,按需解決,這部分是綜合參考了別的教程鹰溜,自己也遇到了當(dāng)中的一個問題虽填,并且也解決了
出現(xiàn)問題:error:Failed dependencies:
libnuma.so.1()(64bit) is needed by mysql-community-server-8.0.13-1.el7.x86_64 libnuma.so.1(libnuma_1.1)(64bit) is needed by mysql-community-server-8.0.13-1.el7.x86_64 libnuma.so.1(libnuma_1.2)(64bit) is needed by mysql-community-server-8.0.13-1.el7.x86_64
解決辦法:yum install numactl
出現(xiàn)問題:error:Failed dependencies:
pkgconfig(openssl) is needed by mysql-community-devel-8.0.13-1.el7.x86_64
解決辦法:yum install openssl-devel.x86_64 openssl.x86_64 -y
出現(xiàn)問題:error:Failed dependencies:
perl(Data::Dumper) is needed by mysql-community-test-8.0.13-1.el7.x86_64
解決辦法:yum -y install autoconf
出現(xiàn)問題:error:Failed dependencies:
perl(Test::More) is needed by mysql-community-test-8.0.13-1.el7.x86_64
解決辦法:
yum install perl-Test-*.noarch -y
出現(xiàn)問題:error:Failed dependencies:
perl(JSON) is needed by mysql-community-test-8.0.13-1.el7.x86_64
解決辦法:
yum install perl.x86_64 perl-devel.x86_64 -y
yum install perl-JSON.noarch -y
啟動mysql
初始化數(shù)據(jù)庫
mysqld --initialize --console
目錄授權(quán)
chown -R mysql:mysql /var/lib/mysql/
啟動mysql
systemctl start mysqld.service
查看mysql狀態(tài),出現(xiàn)下圖中情況說明啟動成功了?? ?
systemctl status mysqld.service
進入開始放安裝包的路徑
cd /usr/local? ? ? ? ? ?
?刪除安裝包
rm mysql/ -rf? ? ? ? ? ? ? ? ??
登錄mysql
啟動mysql后會生成一個臨時密碼曹动,使用此命令可以查詢到臨時密碼斋日,見下圖
grep "A temporary password" /var/log/mysqld.log? ? ? ? ? ? ? ? ? ? ? ?
使用此命令進入mysql,然后回車后會要求輸入密碼墓陈,使用上一步獲取的臨時密碼就可以登錄恶守,進入下圖頁面說明登錄成功
mysql -u root -p? ? ? ? ??
xxxx代表你的設(shè)置的密碼,(必須包含:數(shù)字大小寫字母特殊字符竭恬,長度最小為8位)
alter USER 'root'@'localhost' IDENTIFIED BY 'xxxx';? ? ? ? ? ? ? ? ?
創(chuàng)建遠(yuǎn)程登錄賬號
創(chuàng)建一個user的賬號,? xxxxxxxx為密碼
create user 'user'@'%'identified by 'xxxxxxxx';? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
grant all privileges on *.* to 'user'@'%' with grant option;? ? ? ? ? ? ? ? ? ? ? ? ? ? ??
更改加密方式熬的,可提供可視化工具鏈接
alter user 'user'@'%' identified with mysql_native_password;? ? ? ? ? ? ? ? ? ? ? ?
alter user 'user'@'%' identified by 'xxxxxxxxx' password expire never;
#刷新
flush privileges;? ? ? ? ? ? ? ? ? ? ? ? ??
此命令是退出mysql登錄狀態(tài)
Ctrl + d? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?
重啟mysql
systemctl restart mysqld? ? ? ? ? ??
此時應(yīng)該是可以使用遠(yuǎn)程可視化工具連接mysql了痊硕,如果還是連接錯誤,查看防火墻是否開啟mysql的默認(rèn)端口3306押框,防火墻?firewalld 規(guī)則請自行百度岔绸,若本教程有錯誤地方,請指正橡伞,謝謝盒揉!好了,看完了兑徘,趕緊跟著教程動起來吧