【MySQL】MySQL5.7安裝與配置

一、實驗環(huán)境

操作系統(tǒng):CentOS 7.x ? ? ? ? ?

MySQL版本:MySQL5.7

IP: 192.168.1.106


二、防火墻、selinux設置

#?setenforce?0

#?sed?-i?'s/^SELINUX=.*/SELINUX=permissive/g'???/etc/selinux/config

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

# firewall-cmd?--reload


三、配置YUM源

MySQL官網yum源:http://dev.mysql.com/downloads/repo/yum

# wget ?https://repo.mysql.com//mysql57-community-release-el7-11.noarch.rpm

# ?yum ?-y install ?mysql57-community-release-el7-11.noarch.rpm

# yum repolist enabled ?| ?grep "mysql.*-community.*"


你可以修改 /etc/yum.repos.d/mysql-community.repo,改變默認安裝的mysql版本

需要安裝哪個版本,那么設置改倉庫為enabled=1,其他設置為enabled=0

# vim?/etc/yum.repos.d/mysql-community.repo


四、安裝MySQL

# ?yum ?-y install? mysql-community-server ?mysql-community-client

MySQL安裝包有一定大小,請耐心等待安裝

# rpm -qa | grep mysql-community

五、自定義數(shù)據目錄

MySQL的數(shù)據目錄默認是/var/lib/mysql ,當然你也可以自定義數(shù)據存放目錄

# mkdir /opt/data/mysql

# vim??/etc/my.cnf

datadir=/opt/data/mysql


注意:

socket=/var/lib/mysql/mysql.sock 這個配置沒有更改的必要

如果你自定義為? socket=/var/lib/mysql/mysql.sock,那么啟動后連接數(shù)據庫時就會報錯

如果更改了默認,那么數(shù)據庫啟動后,需要做一個軟鏈接

# ln -s /opt/data/mysql/mysql.sock? ?/var/lib/mysql/mysql.sock

因為rpm包安裝的MysQL客戶端默認會去找/var/lib/mysql/mysql.sock,你也可以在MySQL配置文件中加客戶端相關字段,然后重啟MySQL!


# chown? -R mysql:mysql?/opt/data/mysql




六、初始化MySQL

初始化MySQL,可以通過執(zhí)行 mysqld --initialize 或者 mysqld --initialize-insecure

使用 --initialize 選項,以“安全模式”初始化,會在日志中生成一個隨機的root初始密碼

使用--initialize-insecure選項,以“非安全模式”初始化,沒有root密碼生成,你需要及時為MySQL指定一定強度的root密碼


方式一、以“安全模式”初始化

#?mysqld? --initialize???--datadir=/opt/data/mysql??--user=mysql

#??cat /var/log/mysqld.log | grep "temporary password"

# systemctl start mysqld

#?systemctl status mysqld


# mysql -u root -p"*simYaJY=7zH"

首次登錄,必須更改隨機的root初始密碼,且密碼強度需滿足一定要求,才能執(zhí)行數(shù)據庫操作

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '設置的新密碼';


# mysql -u root -p"MySQL@123"



方式二、以 “非安全模式”初始化

# mysqld --initialize-insecure??--datadir=/opt/data/mysql?--user=mysql

# systemctl start mysqld

# systemctl ?status?mysqld.service

#? mysql -u root? --skip-password

投入生產前,你需要立刻為MySQL設置一個root密碼

交互式設置

# mysql -u root --skip-password

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '設置的新密碼';

非交互式設置

# mysql -u root --connect-expired-password -e "ALTER USER 'root'@'localhost' IDENTIFIED BY '設置的新密碼'"

七、參考

The world's most popular open source database?

https://dev.mysql.com

A Quick Guide to Using the MySQL Yum Repository

https://dev.mysql.com/doc/mysql-yum-repo-quick-guide/en/

Installing MySQL on Linux Using the MySQL Yum Repository

https://dev.mysql.com/doc/refman/5.7/en/linux-installation-yum-repo.html

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關閱讀更多精彩內容

友情鏈接更多精彩內容