linux版本:Centois7
mysql版本:mysql-8.0.16
一、安裝
1、下載mysql離線安裝包
下載地址:https://dev.mysql.com/downloads/mysql/
選擇如下:
【Red Hat Enterprise Linux 7 / Oracle Linux】
【Red Hat Enterprise Linux 7 / Oracle Linux 7 (x86, 64-bit)】
2、上傳tar包至服務器
3、刪除原有的mariadb
先查看一下是否已經安裝了,命令:rpm -qa|grep mariadb
刪除mariadb,命令:rpm -e --nodeps mariadb-libs
4、解壓縮mysql離線安裝包
cd /home/soft
tar -xvf mysql-8.0.16-2.el7.x86_64.rpm-bundle.tar
解壓縮之后,包含以下rpm包
mysql-community-libs-8.0.16-2.el7.x86_64.rpm mysql-community-embedded-compat-8.0.16-2.el7.x86_64.rpm mysql-community-devel-8.0.16-2.el7.x86_64.rpm mysql-community-server-8.0.16-2.el7.x86_64.rpm mysql-community-libs-compat-8.0.16-2.el7.x86_64.rpm mysql-community-client-8.0.16-2.el7.x86_64.rpm mysql-community-common-8.0.16-2.el7.x86_64.rpm mysql-community-test-8.0.16-2.el7.x86_64.rpm
5、安裝rmp包
逐個安裝,命令如下:
【必須安裝】
rpm -ivh mysql-community-common-8.0.16-2.el7.x86_64.rpm
rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm
rpm -ivh mysql-community-client-8.0.16-2.el7.x86_64.rpm
rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm
【非必須安裝】
rpm -ivh mysql-community-libs-compat-8.0.16-2.el7.x86_64.rpm
rpm -ivh mysql-community-embedded-compat-8.0.16-2.el7.x86_64.rpm
rpm -ivh mysql-community-devel-8.0.16-2.el7.x86_64.rpm
rpm -ivh mysql-community-test-8.0.16-2.el7.x86_64.rpm
出現錯誤1:
warning: mysql-community-devel-8.0.16-2.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY
error: Failed dependencies:
pkgconfig(openssl) is needed by mysql-community-devel-8.0.16-2.el7.x86_64
解決辦法1:
yum install openssl-devel.x86_64 openssl.x86_64 -y
出現問題2:
warning: mysql-community-test-8.0.16-2.el7.x86_64.rpm: Header V3 DSA/SHA1 Signature, key ID 5072e1f5: NOKEY error: Failed dependencies: perl(Data::Dumper) is needed by mysql-community-test-8.0.16-2.el7.x86_64 perl(JSON) is needed by mysql-community-test-8.0.16-2.el7.x86_64
解決辦法2:
yum install perl.x86_64 perl-devel.x86_64 -y
yum install perl-JSON.noarch -y
yum -y install autoconf
二、服務啟停
1、查看服務狀態
命令:systemctl status mysqld
2、停止服務
命令:service mysqld stop
3、初始化數據庫
命令:mysqld --initialize --console
4、目錄授權
命令:chown -R mysql:mysql /var/lib/mysql/
5、啟動mysql服務
命令:systemctl start mysqld
命令:systemctl status mysqld
三、數據庫操作
1、查看臨時密碼:
命令:cat /var/log/mysqld.log
2、用臨時密碼登錄數據庫
命令:mysql -u root -p 回車鍵
然后輸入臨時密碼(輸入時不會顯示出來,輸入完直接回車)
3、修改mysql密碼
命令:alter USER 'root'@'localhost' IDENTIFIED BY '123456';
4、授權遠程連接
命令:show databases;
命令:use mysql;
命令:select host, user, authentication_string, plugin from user;
命令:update user set host = "%" where user='root';
命令:select host, user, authentication_string, plugin from user;
命令:flush privileges;
嘗試使用navacat遠程連接,會出現如下錯誤
2059 - Authenticationplugin‘caching_sha2_password’ cannot be loaded:XXXXX
解決辦法:
命令:mysql -u root -p(回車后,輸入更改后的密碼123456)
命令:use mysql;
命令:alter USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';
命令:flush privileges;
備注: mysql8 之前的版本中加密規則是mysql_native_password,而在mysql8之后,加密規則是caching_sha2_password。 解決問題方法有兩種: 方法1.升級navicat驅動; 方法2.把mysql用戶登錄密碼加密規則還原成mysql_native_password.。 此處我使用的是方法2。
再次從navicat嘗試連接mysql,測試成功。
四、在阿里雲ECS雲服務器上再次進行安裝時遇到的問題
阿里雲ECS系統環境:Centos8
==問題1==
在執行rpm -ivh rpm -ivh mysql-community-libs-8.0.16-2.el7.x86_64.rpm的時候,報錯如下:
解決辦法:
下載並安裝compat-openssl10-1.0.2o-3.el8.x86_64.rpm
==問題2==
在執行rpm -ivh mysql-community-server-8.0.16-2.el7.x86_64.rpm之后,報如下錯誤;
解決辦法:
按照提示,修改文件中的路徑之后,重新執行rpm命令即可
vim /usr/lib/tmpfiles.d/libstoragemgmt.conf
vim /usr/lib/tmpfiles.d/mysql.conf
vim /usr/lib/tmpfiles.d/mdadm.conf
==問題3==
使用命令systemctl start mysqld啟動mysql的時候,啟動失敗,通過cat /var/log/mysqld.log命令查看日志,發現以下錯誤
The innodb_system data file 'ibdata1' must be writable
解決辦法:
修改目錄權限。命令:chmod -R 777 /var/lib/mysql
--END--