Centos7 安裝mysql-8.0.13(rpm)


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=disabled
reboot 重啟機器

從網易鏡像下載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;
復制代碼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM