騰訊雲centos7.7(64)服務器安裝mysql8.0.20數據庫
1、重裝雲服務器操作系統(爲了模擬新服務器首次安裝mysql數據庫,這一步可以忽略)
2、下載mysql安裝包
下載地址:https://dev.mysql.com/downloads/mysql/
由於之前沒有注意操作系統版本,下載下來的安裝包在安裝過程中各種坑,填都填不完,一定要注意,千萬別選錯了!!!我的操作系統爲centos7.7(64),我這選的是mysql-8.0.20-1.el7.x86_64.rpm-bundle.tar
3、使用xshell遠程登錄服務器
4、由於mariadb中的lib包和mysql8.0.20的lib包衝突,如果已經安裝了mariadb,則需要將其卸載。
查看系統中是否已經安裝mariadb:rpm -qa | grep mariadb
5、卸載mariadb:rpm -e mariadb-libs --nodeps
6、再次查看mariadb是否卸載完成:rpm -qa | grep mariadb
下邊什麼都沒有,則表示已卸載完成。
7、上傳安裝包
在/usr下創建softbag文件夾,用於存放所有的安裝包(個人習慣,你可以自定義)。
在softbag中上傳之前下載好的mysql-8.0.20-1.el7.x86_64.rpm-bundle.tar文件
使用rz命令上傳mysql8.0.20安裝包。
rz命令不存在,先安裝rz:yum install -y lrzsz
再次上傳文件:rz
上傳完成後,查看上傳結果:ll
8、解壓安裝包(我習慣放在/usr/local/mysql,可以不用跟我的一樣):
在/usr/local下面創建mysql文件夾
cd ..
cd local/
mkdir mysql
ll
解壓安裝包
cd ../softbag/
tar -xvf mysql-8.0.20-1.el7.x86_64.rpm-bundle.tar
將解壓後的文件移動到/usr/local/mysql下
mv ./mysql-community-* /usr/local/mysql/
查看當前文件夾和目標文件夾下的文件列表
ll
cd ../local/mysql/
ll
9、安裝common:
rpm -ivh mysql-community-common-8.0.20-1.el7.x86_64.rpm --nodeps --force
10、安裝libs:
rpm -ivh mysql-community-libs-8.0.20-1.el7.x86_64.rpm --nodeps --force
11、安裝client:
rpm -ivh mysql-community-client-8.0.20-1.el7.x86_64.rpm --nodeps --force
12、安裝server:
rpm -ivh mysql-community-server-8.0.20-1.el7.x86_64.rpm --nodeps --force
13、查看mysql安裝包:
rpm -qa | grep mysql
14、mysql數據庫初始化和相關配置
mysqld --initialize;
執行該命令後報錯:
mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
解決方案:yum install -y numactl
再次執行 mysqld --initialize;
這次就順利通過了。
更改屬組
chown mysql:mysql /var/lib/mysql -R;
啓動mysql
systemctl start mysqld.service;
開機啓動
systemctl enable mysqld;
15、查看數據庫的密碼
cat /var/log/mysqld.log | grep password
16、登錄數據庫
mysql -uroot -p,密碼是剛剛查到的,輸入密碼時是不顯示的,爲了防止輸入錯誤,建議複製粘貼。
17、修改本地登錄密碼,由於是服務器,不建議設置類似於123456之類的簡單密碼,注意保護自己的賬號密碼安全。
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY ‘***********’;
18、退出當前登錄,使用新密碼登錄。
exit;
mysql -uroot -p
19、遠程訪問授權,同樣密碼不要太簡單,建議跟本地密碼相同。
create user 'root'@'%' identified with mysql_native_password by '************';
grant all privileges on *.* to 'root'@'%' with grant option;
flush privileges;
20、如果防火牆開着的話,自己關一下或者允許3306對外訪問。
21、配置騰訊雲服務器實例的安全組
用本地cmd命令窗口確認一下端口是否聯通:
telnet 自己的服務器ip 3306
出現黑窗口,則表示聯通。
22、用mysql客戶端工具鏈接,我這裏用的是navicate(你用自己熟悉的工具就行,不用和我的一樣)。
出現鏈接成功,就能正常去應用了。
引文:https://blog.csdn.net/weixin_42266606/article/details/80879571