CentOS7安裝MySQL5.7——二進制安裝包


  老規矩,先總結安裝步驟:

1、查看操作系統信息,下載正確的mysql安裝包

2、檢查操作系統環境,軟件殘留,依賴包,關閉防火牆等

3、開始安裝

一、查看操作系統信息

  不同的內核,使用的安裝包是不同的,所以第一步必須先驗證操作系統的內核版本,然后再去下載對應的MySQL安裝包,免得在安裝的時候才發現安裝包不可用,下圖分別展示了兩種內核的CentOS7操作系統:

uname -a

 

 

 

 

對應  MySQL的官網下載版本,圖一中的x86_64內核應該下載x86,64-bit版本

 

圖二中的aarch64內核應該下載ARM,64-bit版本:

 aarch64版本的內核目前主要是華為雲的鯤鵬系列服務器使用,阿里雲的慣用x86_64,當然,一切以實際情況為准,眼見為實。

二、檢查系統環境

1、檢查防火牆,不關閉防火牆, 及時數據庫安裝完畢,外部也無法連接

systemctl stop firewalld        #關閉防火牆

systemctl disable firewalld      #關閉防火牆開機自啟

setenforce 0           #臨時關閉selinux,此命令重啟服務器后失效,如果想永久關閉,則需要修改/etc/selinux/config

永久關閉selinux的操作:

vi /etc/selinux/config

修改SELINUX參數值為disabled,然后重啟服務器即可

2、查看是否安裝了mariadb,一般情況下centos都默認安裝的,在某些MySQL5.7的小版本會有沖突,必須先卸載mariadb之后才能正常安裝,如MySQL5.7.17,但是並不是所有的版本都會沖突,所以可以先查看mariadb的安裝信息,先不卸載,在安裝MySQL的過程中報錯沖突之后再來卸載,查看命令如下:

rpm -qa|grep mariadb

 卸載命令:

rpm -e <mariadb的具體信息,即上條命令的結果>

3、檢查依賴包,MySQL5.7需要兩個依賴包,如果沒有的話則可能安裝失敗

yum list installed|grep libaio

yum list installed|grep numact

如果已經安裝,則會返回具體的版本號:

 反之則無信息返回,那就需要手動進行安裝,先使用yum Install命令進行安裝即可,如果服務器在局域網無法連通外網,則可以手動在阿里雲的yum源網頁中下載:http://mirrors.aliyun.com/centos/

注意找對自己的操作系統

 

 三、開始安裝

使用二進制安裝包須使用root賬號或者擁有sudo權限

1. 安裝包保存到/usr/local

2. 解壓:

cd /usr/local

tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar

mv mysql-5.7.22-linux-glibc2.12-x86_64 mysql

3. 添加用戶組和用戶

#添加用戶組
groupadd mysql
#添加用戶mysql 到用戶組mysql
useradd -g mysql mysql

4. 創建數據存放路徑並授權,我習慣把數據存放在根目錄下的data文件夾

mkdir /data

chown -R mysql:mysql /data

5. 復制啟動文件

cp support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

cp /bin/my_print_defaults /usr/bin/ 

6. 修改mysql配置項,根據自己的需求配置my.cnf文件

 

vi /etc/my.cnf

配置如下:

[mysqld]

basedir=/usr/local/mysql

datadir=/data

socket=/tmp/mysql.sock

user = mysql

tmpdir = /tmp

symbolic-links=0

port=3306   

lower_case_table_names=1

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION

default_password_lifetime=0

explicit_defaults_for_timestamp=on

# Disabling symbolic-links is recommended to prevent assorted security risks

symbolic-links=0

# Settings user and group are ignored when systemd is used.

# If you need to run mysqld under a different user or group,

# customize your systemd unit file for mariadb according to the

# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]

log-error=data_path/mysql_error.log

pid-file=data_path/mysql.pid

# include all files from the config directory

[client]

default-character-set=utf8

[mysql]

 

default-character-set=utf8

 

7. 初始化數據庫

/usr/local/mysql/bin/mysqld --initialize --user=mysql > /home/mysql/initialize.log 2>&1

如果初始化失敗了,則把數據存放文件夾清空,即把/data文件夾下的所有內容刪除,然后重新執行初始化命令,重復操作知道初始化成功為止

8. 啟動MySQL

加入環境變量,編輯 /etc/profile,這樣可以在任何地方用mysql命令了
vi /etc/profile
添加mysql路徑,加入下面內容,按ESC-->:wq保存
export PATH=$PATH:/usr/local/mysql/bin
刷新立即生效
source /etc/profile

/etc/init.d/mysqld start

9. 進入MySQL修改初始密碼,修改遠程連接的用戶權限問題

查看root用戶的初始化密碼,vi  /home/mysql/initialize.log

 mysqladmin -uroot -p初始化密碼 password "root_123456"

創建賬號跟數據庫

CREATE USER 數據庫用戶名’@’%’ IDENTIFIED BY '賬號密碼密碼';

CREATE USER test’@’%’ IDENTIFIED BY 'test_2020';

CREATE DATABASE `數據庫名` DEFAULT  CHARACTER SET utf8 COLLATE utf8_general_ci;

CREATE DATABASE `test` DEFAULT  CHARACTER SET utf8 COLLATE utf8_general_ci;

GRANT ALL privileges ON 數據庫名.* TO '數據庫用戶名'@'%';

flush privileges;

/etc/init.d/mysqld stop

至此數據庫安裝完畢!啟停命令如下:

1、啟動

su mysql

/etc/init.d/mysqld start

exit

2、停止

su mysql

/etc/init.d/mysqld stop

exit

啟動后查看MySQL進程:

 P.S.

1、如果數據庫所在服務器為阿里雲或者華為雲等網絡服務器,注意創建mysql賬號時的密碼應復雜一些,否則容易被人暴力破解,安裝挖礦病毒,挖礦病毒的處理可查看博文:https://www.cnblogs.com/fivedays/p/12572178.html


免責聲明!

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



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