CentOS7.5 安裝 Mysql 5.7.24 步驟記錄

1. 下載 MySQL

本文采用的Linux為是騰訊云 標(biāo)準(zhǔn)型S2 (1 核 1 GB) Centos 7.5 64位

1.1 官網(wǎng)下載地址:

https://dev.mysql.com/downloads/mysql/5.7.html#downloads

1.2 選擇64位的

image

1.3 說明

該文檔僅供參考,更多詳細(xì)文檔請查看官方文檔

https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html

2. 上傳文件并解壓到安裝目錄

2.1 使用xftp上傳到指定目錄 我的目錄為

/app/tool

2.2 解壓

tar -zvxf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz

2.3 重命名

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

2.4 復(fù)制到指定目錄

cp -r mysql /usr/local/

3. 添加用戶組,用專門管理mysql,提高安全

3.1 新建組

groupadd mysql

3.2 新建用戶

useradd -r -g mysql mysql

4. 修改mysql目錄權(quán)限

4.1 進(jìn)入mysql根目錄

cd /usr/local/mysql/

4.2 修改擁有者為mysql用戶

chown -R mysql:mysql ./

5. 配置mysql服務(wù)

5.1 將mysql/support-files下的mysql.server 復(fù)制到 /etc/init.d/下并自定義為mysql

cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql

5.2 修改該服務(wù)

vi /etc/init.d/mysql

5.3 修改的內(nèi)容

basedir=/usr/local/mysql
datadir=/usr/local/mysql/data

6. 配置mysql的配置文件

在/etc/ 下新建my.cnf ,有些可能會提示已經(jīng)存在,因為默認(rèn)裝的數(shù)據(jù)庫配置文件也在,直接覆蓋就行

6.1 進(jìn)入etc目錄

cd /etc

6.2 刪除my.cnf

rm -rf my.cnf

6.3 新建my.cnf

vi my.cnf

6.4 編輯的內(nèi)容

# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[client]
port = 3306
default-character-set=utf8

[mysqld]
# 一般配置選項
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character-set-server=utf8
default_storage_engine = InnoDB

# NO_AUTO_VALUE_ON_ZERO 參數(shù)是允許自增id 從 0開始, 不設(shè)置這個參數(shù), 自增ID 從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

7. 初始化數(shù)據(jù)庫

7.1 進(jìn)入mysql/bin目錄下

cd /usr/local/mysql/bin/

7.2 執(zhí)行初始化

./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

7.3 遇到錯誤

./mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory

7.4 執(zhí)行以下命令

yum -y install numactl.x86_64

7.5 再執(zhí)行初始化

./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

7.6 遇到錯誤

./mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

7.7 執(zhí)行以下命令

yum -y install libaio

7.8 再執(zhí)行初始化

./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

7.9 執(zhí)行完畢后會自動生成默認(rèn)的密碼在執(zhí)行記錄中,注意復(fù)制出來

image

8. 啟動mysql服務(wù)

8.1 執(zhí)行啟動命令

service mysql start

8.2啟動成功會提示 SUCCESS

9. 登錄及遠(yuǎn)程配置

9.1 登錄

進(jìn)入mysql/bin目錄下執(zhí)行

./mysql -uroot -p

9.2 輸入密碼

Enter password:輸入默認(rèn)的臨時密碼

9.3 修改密碼

mysql> set password=password('新密碼');

9.4 設(shè)置遠(yuǎn)程訪問

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '訪問密碼';

mysql> flush privileges;

9.5 開放端口(云服務(wù)器需到控制臺處理)

9.5.1 開啟端口

firewall-cmd --zone=public --add-port=3306/tcp --permanent

9.5.2 重載防火墻

firewall-cmd --reload

10. 設(shè)置開機(jī)啟動和環(huán)境變量(可以忽略)

10.1 查看自啟服務(wù)列表

chkconfig --list

10.2 添加mysql服務(wù)到自啟服務(wù)

chkconfig --add mysql

10.3 設(shè)置自啟

chkconfig mysql on

11. 環(huán)境變量

11.1 為了不用在mysql/bin目錄下才能連接mysql 將mysql/bin目錄設(shè)置到環(huán)境變量中

vi /etc/profile

11.2 在最后追加的內(nèi)容

# mysql environment
export MYSQL_HOME=/usr/local/mysql
export PATH=$PATH:$MYSQL_HOME/bin

11.3 更新環(huán)境變量

source /etc/profile

另外附上一些用戶權(quán)限相關(guān)操作的SQL語句

創(chuàng)建用戶
  • 創(chuàng)建了一個名為:test 密碼為:1234 的用戶
    mysql> create user 'test'@'localhost' identified by '1234';
查詢用戶
  • 查詢用戶
    mysql> select user,host from mysql.user;
刪除用戶
  • 刪除用戶“test”
    mysql> drop user test@localhost ;
  • 若創(chuàng)建的用戶允許任何電腦登陸,刪除用戶如下
    mysql> drop user test@'%';
更改密碼
  • 方法1,密碼實時更新;修改用戶“test”的密碼為“1122”
    mysql> set password for test =password('1122');
  • 方法2,需要刷新;修改用戶“test”的密碼為“1234”
    mysql> update mysql.user set password=password('1234') where user='test';
  • 刷新
    mysql> flush privileges;
授予權(quán)限
  • 授予用戶test通過外網(wǎng)IP對數(shù)據(jù)庫“testdb”的全部權(quán)限
    mysql> grant all privileges on 'testdb'.* to 'test'@'%' identified by '1234';

  • 刷新權(quán)限
    mysql> flush privileges;

  • 授予用戶“test”通過外網(wǎng)IP對于該數(shù)據(jù)庫“testdb”中表的創(chuàng)建、修改、刪除權(quán)限,以及表數(shù)據(jù)的增刪查改權(quán)限
    mysql> grant create,alter,drop,select,insert,update,delete on testdb.* to test@'%';

查看用戶權(quán)限
  • 查看用戶“test”的相關(guān)權(quán)限
    mysql> show grants for test;
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容