https://downloads.mysql.com/archives/community/
下載

安裝前准備,卸載自帶的 mariadb,安裝依賴環境
列出已安裝的 mariadb 必須寫在,否則提示:mariadb libs被mysql-community-libs-8.0.18-1.el7.x86_64淘汰

[root@mysql ~]# rpm -qa | grep mariadb mariadb-libs-5.5.60-1.el7_5.x86_64 方法一:rpm -e --nodeps 卸載 mariadb [root@mysql ~]# rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64 方法二:yum -y remove 卸載 mariadb [root@mysql ~]# yum -y remove mariadb-libs-5.5.60-1.el7_5.x86_64
解壓后 是 4個包
我放在 /usr/local/mysql8/ 路徑下:
cd /usr/local mkdir mysql8 '''''''''''''''''''''''''''''''''''''''' [root@localhost mysql8]# ll total 483288 -rwxr-xr-x. 1 root root 40104640 Feb 19 03:51 mysql-community-client-8.0.18-1.el7.x86_64.rpm -rwxr-xr-x. 1 root root 611436 Feb 19 03:51 mysql-community-common-8.0.18-1.el7.x86_64.rpm -rwxr-xr-x. 1 root root 3877664 Feb 19 03:51 mysql-community-libs-8.0.18-1.el7.x86_64.rpm -rwxr-xr-x. 1 root root 450282440 Feb 19 03:38 mysql-community-server-8.0.18-1.el7.x86_64.rpm '''''''''''''''''''''''''''''''''''''''''''''''''''''''''
# 安裝mysql的rpm包
rpm -ivh mysql-community-common-8.0.18-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-8.0.18-1.el7.x86_64.rpm rpm -ivh mysql-community-client-8.0.18-1.el7.x86_64.rpm rpm -ivh mysql-community-server-8.0.18-1.el7.x86_64.rpm

查看 mysql
rpm -qa | grep mysql

初始化數據庫
mysqld --initialize --console
目錄授權 chown -R mysql:mysql /var/lib/mysql/
啟動mysql服務 systemctl start mysqld
查看是否啟動成功,active (running)
初始化數據庫 mysqld --initialize --console 目錄授權 chown -R mysql:mysql /var/lib/mysql/ 啟動mysql服務 systemctl start mysqld
查看初始化后的臨時密碼
grep 'temporary password' /var/log/mysqld.log 或者 cat /var/log/mysqld.log | grep 'temporary password'

登錄mysql
[root@mysql home]# mysql -u root -p Enter password: 直接粘貼初始密碼 ,回車確認

修改初始密碼,授權遠程登錄
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'HomeTest$2019'; (修改 “HomeTest$2019” 為你自己的密碼) mysql> use mysql; (切換到mysql庫) mysql> update user set host = "%" where user='root'; (授權遠程登錄修改host值(以通配符%的內容增加主機/IP地址),當然也可以直接增加IP地址 ) mysql> flush privileges; (刷新) mysql> quit; (退出登錄)

注意:navicat for mysql 鏈接時報錯:1251-Client does not support authentication protocol requested by server
客戶端使用navicat for mysql。本地安裝了mysql 8.0。但是在鏈接的時候提示:

主要原因是mysql服務器要求的認證插件版本與客戶端不一致造成的。
打開mysql命令行輸入如下命令查看,系統用戶對應的認證插件:
select user, plugin from mysql.user

用戶使用的plugin是caching_sha2_password
caching_sha2_password是8.0默認的認證插件,必須使用支持此插件的客戶端版本
plugin的作用之一就是處理后的密碼格式和長度是不一樣的,類似於使用MD5加密和使用base64加密一樣對於同一個密碼處理后的格式是不一樣的。
解決方法:
我
ALTER USER 'gupan_1311'@'%' IDENTIFIED WITH mysql_native_password BY 'gupan_1311';
不希望更新本地的客戶端版本,想直接使用原來的環境來鏈接。
解決方法是將root的plugin改成mysql_native_password。相當於降了一級。
mysql官方網站提供了從mysql_old_password升級到mysql_native_password,我們可以仿照這個。官方原文如下:

ALTER USER 'gupan_1311'@'%' IDENTIFIED WITH mysql_native_password BY 'gupan_1311';

再次登錄成功,耶耶耶!! 捯飭了一天,服了

1.show databases; 查看當前所有的庫 show tables;
2.use 庫名; 打開指定的庫
3.show tables; 查看當前庫的所有表 示 tables
4.show tables from '庫名'; 查看其它庫的所有表
5.select database(); 查看當前所在的路徑
6.create tables (
列名 列類型,
列名 列類型);
7.desc stuinfo; 查看表的結構
8.select version(); 查看mysql版本
