第一步:下載mysql
1、對於無網絡條件來說,需要安裝文件交互軟件,xftp 6 或者 MobaXterm,把優盤的裏安裝包copy進去就行,鏈接在下方
我是鏈接:https://pan.baidu.com/s/12ugq0TQSTcjfZey2sWCOkA 我是提取碼:ppto
1 |
[root@Localhost]# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
|
2、若報-bash: wget: command not found,則表明沒有安裝wget,需要安裝,安裝命令如下:
1 |
yum -y install wget |
安裝完成即可以使用。
3、檢查是否本地已經安裝了mysql(|前後帶不帶空格都行),沒有反應就是沒有安裝
1 |
rpm -qa | grep mysql
|
4、卸載以前的mysql
1 |
rpm -e 已經存在的MySQL全名
|
第二步:解壓文件
1 |
[root@Localhost]# tar -zxvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz -C /usr/local/
|
文件名修改爲mysql:
1 |
切到解壓目錄 [root@Localhost]#cd /usr/local 查看目錄下文件 [root@Localhost]#ll [root@Localhost local]# mv mysql-5.7.17-linux-glibc2.5-x86_64/ mysql [root@Localhost local]#ll
|
第三步:配置啓動文件
1、2步對於5.7以後的版本可能會不存在my-default.cnf文件,就不需要進行這兩步操作,官網上給出解釋是,不需要配置
1.然後去到mysql的support-files目錄下,複製my.cnf到 /etc/my.cnf(mysqld啓動時自動讀取)
1 2 3 |
[root@Localhost local]# cd mysql/support-files/ [root@Localhost support-files]# cp my-default.cnf /etc/my.cnf cp: overwrite ‘/etc/my.cnf’? yes
|
注意:如果你在安裝時Linux虛擬機時同時安裝了默認的mysql,此時操作以上步驟,終端將會提示你文件已存在是否覆蓋,輸入yes覆蓋即可。
2.配置數據庫編碼
1 |
[root@Localhost support-files]# vim /etc/my.cnf 按鍵盤上的【Insert】鍵編寫 |
添加以下內容:
1 2 3 4 5 6 |
[mysql] default-character-set=utf8
[mysqld] default-storage-engine=INNODB character_set_server=utf8
寫入後按【Esc】退出編輯模式,然後直接輸入【:wq】保存退出 |
3.複製mysql.server到/etc/init.d/目錄下(目的想實現開機自動執行效果)
1 |
[root@Localhost support-files]# cp mysql.server /etc/init.d/mysql |
4.修改/etc/init.d/mysql參數
1 |
[root@Localhost support-files]# vim /etc/init.d/mysql |
修改以下內容:
1 2 |
basedir=/usr/local/mysql datadir=/usr/local/mysql/data
|
5.出於安全便利,創建一個操作數據庫的專門用戶
建立一個mysql的組:
1 |
[root@Localhost support-files]# groupadd mysql |
建立mysql用戶,並且把用戶放到mysql組:
1 |
[root@Localhost support-files]# useradd -r -g mysql mysql |
給mysql用戶設置一個密碼:
1 |
[root@Localhost support-files]# passwd mysql |
給目錄/usr/local/mysql 更改擁有者:
1 |
[root@Localhost support-files]# chown -R mysql:mysql /usr/local/mysql/ |
第四步:初始化 mysql 的數據庫
1.初始化
1 2 |
[root@Localhost support-files]# cd /usr/local/mysql/bin/ [root@Localhost bin]# ./mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data |
初始化後會生成一個臨時密碼 root@localhost::*(最好先記錄這個臨時密碼)
2.給數據庫加密
1 |
[root@Localhost bin]# ./mysql_ssl_rsa_setup --datadir=/usr/local/mysql/data |
3.啓動mysql
1 |
[root@Localhost bin]# ./mysqld_safe --user=mysql & |
PS:如果啓動失敗則將/etc/my.cnf更改爲其它名稱即可。
啓動:根目錄service mysql start
4.檢查mysql是否啓動
1 |
[root@Localhost bin]# ps -ef|grep mysql |
發現有進程便代表啓動成功,退出mysql。(exit不好使的話,用 \q )
1 |
mysql>exit |
第五步:進入客戶端
1.登錄
1 |
[root@Localhost bin]# ./mysql -uroot -p |
1 |
Enter password:這裏輸入之前的臨時密碼 |
2.修改密碼
1 |
mysql> set password=password('新密碼'); |
第六步:設置遠程訪問
1.打開mysql的默認端口3306
1 |
[root@Localhost 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@Localhost bin]# firewall-cmd --zone=public --add-port=3306/tcp --permanent success [root@Localhost 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@Localhost bin]# chkconfig --add mysql |
2.設置mysql服務爲自啓動
1 |
[root@Localhost bin]# chkconfig mysql on |
第八步:配置環境變量
1.打開配置文件
1 |
[root@Localhost]# vim /etc/profile |
2.最後一行添加:
1 |
export PATH=$JAVA_HOME/bin:/usr/local/mysql/bin:$PATH |
3.使修改生效:
1 |
[root@Localhost]# source /etc/profile |
至此,mysql5.7的安裝就完成了!!!
第九步:測試安裝的數據庫
1.切到MySQL安裝的bin文件下
1 |
[root@Localhost]# cd usr/local/mysql/bin/ |
2.登錄MySQL
1 |
[root@Localhost bin]# ./mysql –uroot –p 輸入設置好的密碼,進去到MySQL裏 |
3.查詢當前數據庫,其中語句的執行結尾要帶有分號;
1 |
mysql> show databases; |
4.打開需要的數據庫
1 |
mysql> use 數據庫名; |
5.查看庫表
1 |
mysql> show tables; |
6.創建數據庫;
1 |
mysql> create database 數據庫名; |
7.導出數據庫和導出數據庫裏其中一張表
1 |
mysql> mysqldump -u root -p dz > /home/數據庫名.sql; mysql> mysqldump -u root -p dz 庫表名 > /home/數據庫表名.sql; |
8.導入數據庫
1 |
mysql> source /home/數據庫文件.sql |