1、前言
當前MySQL最新版本:8.0.13 (聽說比5.7快2倍)
官方之前表示:MySQL 8.0 正式版 8.0.11 已發布,MySQL 8 要比 MySQL 5.7 快 2 倍,還帶來了大量的改進和更快的性能!
開源中國介紹文檔:MySQL 8.0 正式版 8.0.11 發布:比 MySQL 5.7 快 2 倍
2、獲取MySQL最新版 rpm包 集合 的下載地址(獲取最新版MySQL下載地址方法)
MySQL下載頁面:https://dev.mysql.com/downloads/mysql/8.0.html

我是CentOS系統 所以 我選擇了 Red Hat。

第一個為一個 tar歸檔包,里面是 后面所有 rpm 的打包(仔細看后面都是rpm 結尾的)
點擊右邊Download

這就是最新版 MySQL資源鏈接 :https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar
yum or rpm?
yum安裝方式很方便,但是下載mysql的時候從官網下載,速度較慢。
rpm安裝方式可以從國內鏡像下載mysql的rpm包,比較快。rpm也適合離線安裝。
環境說明
- 操作系統:Centos7.5 (CentOS-7-x86_64-DVD-1804.iso)
- mysql:mysql8.0.13
-
卸載系統自帶的mariadb-lib
- 查看mariadb版本
rpm -qa|grep mariadb
mariadb-libs-5.5.56-2.el7.x86_64 - 卸載mariadb
rpm -e mariadb-libs-5.5.56-2.el7.x86_64 --nodeps
查看/安裝依賴環境
yum install -y openssl-devel.x86_64 openssl.x86_64 yum install -y libaio.x86_64 libaio-devel.x86_64 yum install -y perl.x86_64 perl-devel.x86_64 yum install -y perl-JSON.noarch yum install -y autoconf yum install -y wget yum install -y net-tools
關閉防火牆
systemctl stop firewalld.service systemctl disable firewalld.service
禁用selinux
vi /etc/selinux/config
將SELINUX=enforcing改為SELINUX=disabledreboot 重啟機器
從網易鏡像下載mysql安裝包集合
- 下載完整安裝包並解壓
wget https://mirrors.163.com/mysql/Downloads/MySQL-8.0/mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar tar -xvf mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar
- 下載必要安裝包(二選一)
wget https://mirrors.163.com/mysql/Downloads/MySQL-8.0/mysql-community-common-8.0.13-1.el7.x86_64.rpm wget https://mirrors.163.com/mysql/Downloads/MySQL-8.0/mysql-community-libs-8.0.13-1.el7.x86_64.rpm wget https://mirrors.163.com/mysql/Downloads/MySQL-8.0/mysql-community-client-8.0.13-1.el7.x86_64.rpm wget https://mirrors.163.com/mysql/Downloads/MySQL-8.0/mysql-community-server-8.0.13-1.el7.x86_64.rpm
按順序安裝
- 必要安裝(注意順序)
- 安裝common
- 安裝lib 依賴於common,確保已經卸載mariadb
- 依賴於libs
- 依賴於client、common
rpm -ivh mysql-community-common-8.0.13-1.el7.x86_64.rpm rpm -ivh mysql-community-libs-8.0.13-1.el7.x86_64.rpm rpm -ivh mysql-community-client-8.0.13-1.el7.x86_64.rpm rpm -ivh mysql-community-server-8.0.13-1.el7.x86_64.rpm
- 非必要安裝(注意順序)
rpm -ivh mysql-community-libs-compat-8.0.13-1.el7.x86_64.rpm rpm -ivh mysql-community-embedded-compat-8.0.13-1.el7.x86_64.rpm rpm -ivh mysql-community-devel-8.0.13-1.el7.x86_64.rpm rpm -ivh mysql-community-test-8.0.13-1.el7.x86_64.rpm
初始化數據庫
mysqld --initialize --console
目錄授權,否則啟動失敗
chown -R mysql:mysql /var/lib/mysql/
啟動服務
systemctl start mysqld
加密
mysql_secure_installation
其他
其他操作和yum安裝方式一樣,不再重復。
、開始安裝
1、當中會遇到的問題
1、mysql-community-libs .... 這兩個包安裝不上。
原因:我們在Linux系統中,如果要使用關系型數據庫的話,基本都是用的mysql。
而且以往7以下版本的centos系統都是默認的集成有mysql。
然而對於現在最新的centos7系統來說,已經不支持mysql數據庫,它默認內部集成了mariaDB。
如果我們想要使用 mysql 的話,就要先將原來的mariaDB卸載掉,不然會引起沖突。
解決方案:卸載maridb (rpm 不會卸載軟件的 自行百度)
查看安裝的 mariaDB:rpm -qa | grep mariadb
卸載:rpm -e ***(*** 為軟件名)
如果不能卸載則即可:rpm -e --nodeps ***(*** 為軟件名)
2、缺少依賴包 libaio
libaio.so.1()(64bit) is needed by MySQL-server 問題
直接實用yum包管理工具安裝即可:yum install libaio
2、使用 rpm -vih XXXXXX(XXXXXX 為 rpm包全名)
按照依賴順序依次安裝(能安裝的安裝就行,像test這個不方便安裝就算了。)
mysql-community-common-8.0.13-1.el7.x86_64
mysql-community-libs-8.0.13-1.el7.x86_64
mysql-community-libs-compat-8.0.13-1.el7.x86_64
mysql-community-client-8.0.13-1.el7.x86_64
mysql-community-embedded-compat-8.0.13-1.el7.x86_64
mysql-community-server-8.0.13-1.el7.x86_64
7、啟動MySQL服務,並設置root密碼
1、啟動mysql服務
service mysqld restart
2、初次安裝mysql,root賬戶沒有密碼。
[root@izuf6 tmp]# mysql -u root Welcome to the MySQL monitor. Commands end with ; or \g. Your MySQL connection id is 15 Server version: 8.0.13 MySQL Community Server - GPL Copyright (c) 2000, 2018, Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may be trademarks of their respective owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | test | +--------------------+ rows in set (0.01 sec) mysql>
設置密碼:
mysql> set password for 'root'@'localhost' =password('password');
Query OK, 0 rows affected (0.00 sec)
mysql>
不需要重啟數據庫即可生效。
3、使用樣例

6、MySQL一些騷炒作
-- 登錄sys數據庫 mysql -u root -proot sys -- 查看所有的數據庫 select database() -- 查看數據庫 show databases; -- 模糊查詢包含y的數據庫 show databases like '%y%'; -- 查看表 show tables; --模糊查詢包含user的表 show tables like '%user%'; -- 查看列, 查看user表信息 desc user;
-- 查看username用戶被賦予的權限
show grants for username;

