提前準備:
MySQL-5.6 rpm包 可以在sohu的鏡像網站去下載。
將下載好的包上傳至服務器,如果不知道怎樣上傳可以參考這篇博客 CentOs7 配置sftp及sftp常用命令
1.卸載centos自帶的MariaDB(後面的版本因爲mysql有閉源的趨勢,開始預裝MariaDB了)
#檢測系統是否安裝了mariadb
rpm -qa | grep -i mariadb
結果:mariadb-libs-5.5.60-1.el7_5.x86_64
發現了mariadb5.5,把它卸載掉,再檢查一下
#卸載
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
#再次檢查
rpm -qa | grep -i mariadb
#查找有沒有剩餘的文件,有就用 rm命令刪掉
find / -iname mariadb
whereis mariadb
2.如果有MySQL,先卸載
#查看是否有MySQL
rpm -qa | grep -i mysql
結果:MySQL-client-5.6.38-1.el7.x86_64
#卸載
rpm -e MySQL-client-5.6.38-1.el7.x86_64
#再找有沒有mysql文件
whereis mysql
結果:mysql: /usr/lib64/mysql
#刪除掉
rm -rf /usr/lib64/mysql
3.(可選)創建mysql組和用戶,不創建的默認會用root用戶,用戶組名爲mysql就行了
#檢查mysql用戶及組是否存在,如果沒有就進行添加
cat /etc/group |grep mysql #cat /etc/passwd |grep mysql
#創建組
groupadd mysql
#創建用戶並把該用戶加入到組mysql,-r指該用戶是內部用戶,不允許外部登錄
useradd -r -g mysql mysql
#給用戶mysql設置密碼
passwd mysql
3.提前安裝以下兩個依賴,如果沒有,後面安裝時會報錯
yum -y install autoconf
yum install libaio
4.進入上傳的rpm包的位置,進行安裝
ls
結果:MySQL-5.6.25-1.el6.x86_64.rpm-bundle.tar
#打開壓縮包,因爲沒有壓縮(不是.gz),所以不要加參數 -z
tar -xvf MySQL-5.6.25-1.el6.x86_64.rpm-bundle.tar
結果:MySQL-shared-5.6.25-1.el6.x86_64.rpm
MySQL-shared-compat-5.6.25-1.el6.x86_64.rpm
MySQL-embedded-5.6.25-1.el6.x86_64.rpm
MySQL-devel-5.6.25-1.el6.x86_64.rpm
MySQL-client-5.6.25-1.el6.x86_64.rpm
MySQL-test-5.6.25-1.el6.x86_64.rpm
MySQL-server-5.6.25-1.el6.x86_64.rpm
按順序開始進行安裝,
rpm -ivh MySQL-client-5.6.25-1.el6.x86_64.rpm
rpm -ivh MySQL-devel-5.6.25-1.el6.x86_64.rpm
rpm -ivh MySQL-server-5.6.25-1.el6.x86_64.rpm
(注意查看打印信息是否有Error信息,如果出現錯誤可以針對錯誤進行解決)
最後一步執行後會自動進行初始化(如果沒有初始化就執行/usr/bin/mysql_install_db
命令)出現以下信息:
如果沒有生成初始密碼的信息一般是因爲你可能添加了mysql用戶組,它會使用該用戶的密碼,這時候你可以先執行
/usr/bin/mysql_install_db
初始化,查看初始化有沒有報錯,沒有報錯就進入第5步.
#查看密碼
cat /root/.mysql_secret
結果:The random password set for the root user at Sat Mar 21 14:31:07 2020 (local time): e2FJHIRyYK90LIyC
#密碼即爲e2FJHIRyYK90LIyC
5.準備啓動MySQL
service mysql status
結果:MySQL is not running
service mysql start
mysql -uroot -p
Enter password:(輸入剛纔的密碼)
#進入MySQL,設置初始密碼,括號內就是密碼,可以根據你的需要進行設置
set password = password('root');
#開啓root用戶的遠程登錄權限 和遠程登錄密碼(就是這裏的rootpwd)
grant all privileges on *.* to 'root'@'%' identified by 'rootpwd' with grant option;
select Host, user from user;
看到root用戶對應的%就說明可以了
#刷新權限,讓我們的改動立即生效
flush privileges;
#退出
quit
5.重啓MySQL服務
service mysql restart
6.開放3306端口
如果是雲服務器,(我的阿里雲服務器)默認是關閉了防火牆的,因爲有一個總體的外部控制,可以在阿里雲控制檯的安全組中添加規則。
私有的服務器的話一般會開啓防火牆,需要在防火牆上開放端口:
#查看防火牆狀態,
firewall-cmd --state
#如果沒有運行就systemctl start firewalld啓動防火牆
#添加3306端口
firewall-cmd --permanent --zone=public --add-port=3306/tcp
#重載防火牆
firewall-cmd --reload
7.本地使用Navicat連接: