最近無事閑來折騰虛擬機,以前都是折騰雲服務器,現在自己搗搗。看到mysql的教程蠻好的,准備做個筆記。原文來自mysql5.7的安裝與配置(centos7環境)
第一步:下載mysql
1
|
[root
@MiWiFi
-R3-srv ~]# wget http:
//mirrors.sohu.com/mysql/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
|
若報-bash: wget: command not found,則表明沒有安裝wget,需要安裝,安裝命令如下:
1
|
yum -y install wget
|
安裝完成即可以使用。
1:檢查是否本地已經安裝了mysql
1
|
rpm -qa | grep mysql
|
2:卸載以前的mysql
1
|
rpm -e 已經存在的MySQL全名
|
第二步:解壓文件
1
|
[root
@MiWiFi
-R3-srv ~]# tar -zxvf mysql-
5.7
.
17
-linux-glibc2.
5
-x86_64.tar.gz -C /usr/local/
|
文件名修改為mysql:
1
|
[root
@MiWiFi
-R3-srv local]# mv mysql-
5.7
.
17
-linux-glibc2.
5
-x86_64/ mysql
|
第三步:配置啟動文件
然后去到mysql的support-files目錄下,復制my.cnf到 /etc/my.cnf(mysqld啟動時自動讀取)
1
2
3
|
[root
@MiWiFi
-R3-srv local]# cd mysql/support-files/
[root
@MiWiFi
-R3-srv support-files]# cp my-
default
.cnf /etc/my.cnf
cp: overwrite ‘/etc/my.cnf’? yes
|
注意:如果你在安裝時Linux虛擬機時同時安裝了默認的mysql,此時操作以上步驟,終端將會提示你文件已存在是否覆蓋,輸入yes覆蓋即可。
2、配置數據庫編碼
1
|
[root
@MiWiFi
-R3-srv support-files]# vim /etc/my.cnf
|
添加以下內容:
1
2
3
4
5
6
|
[mysql]
default
-character-set=utf8
[mysqld]
default
-storage-engine=INNODB
character_set_server=utf8
|
3、復制mysql.server到/etc/init.d/目錄下(目的想實現開機自動執行效果)
1
|
[root
@MiWiFi
-R3-srv support-files]# cp mysql.server /etc/init.d/mysql
|
4、修改/etc/init.d/mysql參數
1
|
[root
@MiWiFi
-R3-srv support-files]# vim /etc/init.d/mysql
|
修改以下內容:
1
2
|
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
|
5、出於安全便利,創建一個操作數據庫的專門用戶
建立一個mysql的組:
1
|
[root
@MiWiFi
-R3-srv support-files]# groupadd mysql
|
建立mysql用戶,並且把用戶放到mysql組:
1
|
[root
@MiWiFi
-R3-srv support-files]# useradd -r -g mysql mysql
|
給mysql用戶設置一個密碼:
1
|
[root
@MiWiFi
-R3-srv support-files]# passwd mysql
|
給目錄/usr/local/mysql 更改擁有者:
1
|
[root
@MiWiFi
-R3-srv support-files]# chown -R mysql:mysql /usr/local/mysql/
|
第四步:初始化 mysql 的數據庫
1
2
|
[root
@MiWiFi
-R3-srv support-files]# cd /usr/local/mysql/bin/
[root
@MiWiFi
-R3-srv bin]# ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
|
初始化后會生成一個臨時密碼 root@localhost::*(最好先記錄這個臨時密碼)
2.給數據庫加密
1
|
[root
@MiWiFi
-R3-srv bin]# ./mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data
|
3.啟動mysql
1
|
[root
@MiWiFi
-R3-srv bin]# ./mysqld_safe --user=mysql &
|
4.檢查mysql是否啟動
1
|
[root
@MiWiFi
-R3-srv bin]# ps -ef|grep mysql
|
發現有進程便代表啟動成功,退出mysql。
1
|
mysql>exit
|
第五步:進入客戶端
1.登錄:
1
|
[root
@MiWiFi
-R3-srv bin]# ./mysql -uroot -p
|
1
|
Enter password:這里輸入之前的臨時密碼
|
2.修改密碼
1
|
mysql> set password=password(
'新密碼'
);
|
第六步:設置遠程訪問
1:打開mysql的默認端口3306:
1
|
[root
@MiWiFi
-R3-srv bin]# firewall-cmd --zone=
public
--add-port=
3306
/tcp --permanent
|
提示FirewallD is not running,如下圖所示。(ps:圖片是在網上找的)
(1)通過systemctl status firewalld查看firewalld狀態,發現當前是dead狀態,即防火牆未開啟。
(2)通過systemctl start firewalld開啟防火牆,沒有任何提示即開啟成功。
(3)再次通過systemctl status firewalld查看firewalld狀態,顯示running即已開啟了。
如果要關閉防火牆設置,可能通過systemctl stop firewalld這條指令來關閉該功能。
打開3306端口正確為:
1
2
3
4
|
[root
@MiWiFi
-R3-srv bin]# firewall-cmd --zone=
public
--add-port=
3306
/tcp --permanent
success
[root
@MiWiFi
-R3-srv bin]# firewall-cmd --reload
success
|
2:設置mysql的遠程訪問
設置遠程訪問賬號:grant all privileges on . to 遠程訪問用戶名@’%’ identified by ‘用戶密碼’;
1
|
mysql> grant all privileges on *.* to root@
'%'
identified by
'root'
;
|
刷新:
1
|
mysql> flush privileges;
|
第七步:設置開機自啟動
1、添加服務mysql
1
|
[root
@MiWiFi
-R3-srv bin]# chkconfig --add mysql
|
2、設置mysql服務為自啟動
1
|
[root
@MiWiFi
-R3-srv bin]# chkconfig mysql on
|
第八步:配置環境變量
1
|
[root
@MiWiFi
-R3-srv ~]# vim /etc/profile
|
最后一行添加:
1
|
export PATH=$JAVA_HOME/bin:/usr/local/mysql/bin:$PATH
|
使修改生效:
1
|
[root
@MiWiFi
-R3-srv ~]# source /etc/profile
|
至此,mysql5.7的安裝就完成了!!!
此文章只為自己學習和積累,詳細請參考原文http://blog.csdn.net/yougoule/article/details/56680952