CentOS 7.4 安裝 MySQL 5.7 及常見問題


確定系統版本

命令:cat /etc/centos-release
輸入:CentOS Linux release 7.4.1708 (Core)

安裝方式

  1. yum 安裝
  2. 編譯安裝(以后有時間介紹,不同的系統不同的版本,編譯安裝會有各種不同的問題)

yum 安裝方式介紹

CentOS 7 默認安裝了mariadb數據庫,但是我們要使用MySQL

  • 進入本機的源文件目錄
    • cd /usr/local/src/
  • 下載MySQL的repo源
    • wget http://repo.mysql.com/mysql57-community-release-el7-8.noarch.rpm
  • 安裝MySQL源
    • rpm -ivh mysql57-community-release-el7-8.noarch.rpm
  • 使用yum安裝mysql-server(這個過程可能要30分鍾左右)
    • yum -y install mysql-server
  • 安裝完成
總下載量:208 M
Downloading packages:
Delta RPMs disabled because /usr/bin/applydeltarpm not installed.
(1/7): libaio-0.3.109-13.el7.x86_64.rpm                      |  24 kB  00:00:00
(2/7): mysql-community-common-5.7.29-1.el7.x86_64.rpm        | 311 kB  00:00:04
(3/7): mysql-community-libs-5.7.29-1.el7.x86_64.rpm          | 2.5 MB  00:01:39     
(4/7): mysql-community-libs-compat-5.7.29-1.el7.x86_64.rpm   | 1.3 MB  00:00:44     
(5/7): postfix-2.10.1-7.el7.x86_64.rpm                       | 2.4 MB  00:00:00     
(6/7): mysql-community-client-5.7.29-1.el7.x86_64.rpm        |  26 MB  00:09:19     
(7/7): mysql-community-server-5.7.29-1.el7.x86_64.rpm        | 175 MB  00:28:37
已安裝:
  mysql-community-libs.x86_64 0:5.7.29-1.el7
  mysql-community-libs-compat.x86_64 0:5.7.29-1.el7
  mysql-community-server.x86_64 0:5.7.29-1.el7
  
作為依賴被安裝:
  libaio.x86_64 0:0.3.109-13.el7
  mysql-community-client.x86_64 0:5.7.29-1.el7
  mysql-community-common.x86_64 0:5.7.29-1.el7
  
作為依賴被升級:
  postfix.x86_64 2:2.10.1-7.el7
  
替代:
  mariadb-libs.x86_64 1:5.5.56-2.el7
  
完畢!

數據庫配置

  • 啟動MySQL:systemctl start mysqld.service
  • 查看MySQL狀態:systemctl status mysqld.service
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
   Active: active (running) since 日 2020-03-29 01:28:50 CST; 16s ago
  • 查找數據庫root用戶的 臨時密碼:grep "password" /var/log/mysqld.log
2020-03-28T17:28:47.341327Z 1 [Note] A temporary password is generated for root@localhost: :8#I;as5F/yw
  • 使用臨時密碼進入數據庫:mysql -uroot -p
  • 如果不修改密碼,會有如下報錯
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
  • 修改密碼,如果密碼太簡單,會有如下報錯
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123';
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
  • 調整密碼后:
mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY 'Limm123!!';
Query OK, 0 rows affected (0.00 sec)
  • 配置訪問權限
mysql> update mysql.user set host='%' where host='localhost';
Query OK, 3 rows affected (0.00 sec)
Rows matched: 3  Changed: 3  Warnings: 0
  • 刷新權限(重要 !!!)
mysql> flush privileges;
Query OK, 0 rows affected (0.01 sec)
  • Done !!!

MySQL 操作命令

  • 啟動: systemctl start mysqld.service
  • 重啟: systemctl restart mysqld.service
  • 停止: systemctl stop mysqld.service
  • 狀態: systemctl status mysqld.service
  • 設置MySQL開機啟動: systemctl enable mysqld.service
  • 停止MySQL開機啟動: systemctl disable mysqld.service

常見問題

  • MySQL開啟外網訪問權限后還是無法訪問
    如果是阿里雲服務器,找到對應實例的安全組 > 配置規則 > 添加安全組規則:如下圖

  • No more mirrors to try.
    安裝過程如果出現如下報錯,重新執行yum就好

mysql-community-common-5.7.29- FAILED                                          
http://repo.mysql.com/yum/mysql-5.7-community/el/7/x86_64/mysql-community-common-5.7.29-1.el7.x86_64.rpm: 
[Errno 14] curl#6 - "Could not resolve host: repo.mysql.com; Unknown error"
正在嘗試其它鏡像。

Error downloading packages:
  mysql-community-common-5.7.29-1.el7.x86_64: [Errno 256] No more mirrors to try.
  • 問題:MySQL server has gone away
    在執行大文件的時候可能會報如上錯誤, 是因為MySQL限制了server接受的數據包的大小
    查看當前的大小配置:
    show VARIABLES like '%max_allowed_packet%';
    • 第一種方式:
      • 修改my.cnf(查找文件:mysql --help | grep my.cnf)
      • 添加:max_allowed_packet = 100M
    • 第二種方式(臨時解決方案, 數據庫重啟之后會失效):
      • 首先命令行進入MySQL數據庫
      • 執行:set global max_allowed_packet=100*1024*1024;


免責聲明!

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



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