下載MySQL
在 linux 下執(zhí)行下載命令:wget 地址例如:
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
下載好的文件,64 系統(tǒng)使用的 mysql:

1.上傳 MySQL 安裝文件到 Linux
使用 Xftp 上傳文件 mysql-5.7.18-linux-glibc2.5-x86_64.tar



2.檢查系統(tǒng)是否安裝了 mariadb 數(shù)據(jù)
檢查linux是否安裝了mariadb數(shù)據(jù)庫,mariadb數(shù)據(jù)庫是mysql的分支。是免費開源的。mariadb和msyql會有沖突。首先要檢查安裝了mariadb, 卸載掉。
檢查命令 :yum list installed | grep mariadb

3.卸載 mariadb
若linux中安裝了mariadb數(shù)據(jù)庫,先卸載掉,mariadb數(shù)據(jù)庫可能與安裝mysql發(fā)生沖突,執(zhí)行命令:yum -y remove mariadb-libs.x86_64
其中 mariadb-libs.x86_64 是第 2 步搜索出來的 mariadb 軟件包,不同機器可能不一樣, -y 參數(shù)確認刪除。

等待卸載完成:提示 Complete ,卸載完成

4.安裝
解壓下載的mysql軟件壓縮包,執(zhí)行命令 :tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz -C /usr/local/

5.修改解壓后的文件名
將解壓后的mysql-5.7.18-linux-glibc2.5-x86_64改名為mysql-5.7.18 或者 mysql,為了明確mysql的版本,建議改名為mysql-5.7.18
查看原文件夾名稱,執(zhí)行 ll

修改文件夾名稱,執(zhí)行:mv mysql-5.7.18-linux-glibc2.5-x86_64 mysql-5.7.18

6.創(chuàng)建數(shù)據(jù)文件夾 data
data文件夾是mysql用來存放數(shù)據(jù)庫文件的,數(shù)據(jù)庫的表數(shù)據(jù)都放在data目錄。
默認沒有data目錄,可以手工創(chuàng)建data目錄,在mysql-5.7.18文件夾目錄下創(chuàng)建一個data文件夾,切換到mysql-5.7.18目錄,執(zhí)行創(chuàng)建文件夾命令
例 如 :mkdir data

7.創(chuàng)建用戶執(zhí)行 mysqld 命令
創(chuàng)建mysql用戶,用來執(zhí)行MySQL的命令mysqld ,此命令用來初始化msyql基礎信息。可以使用其他用戶,例如叫做 mydb.不推薦
參考地址:https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html
執(zhí)行命令:useradd mysql

使用 mysql 的 mysqld 命令初始化數(shù)據(jù)庫的基本信息。切換到 mysql-5.7.18/bin 目錄下執(zhí)行。
命 令 : ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql-5.7.18/data--basedir=/usr/local/mysql-5.7.18
8.初始化
參數(shù)說明:
--initialize 初始化 mysql,創(chuàng)建 mysql 的 root, 隨機生成密碼。記住密碼,登錄 msyql 使用。
--user 執(zhí)行 msyqld 命令的 linux 用戶名
--datadir : mysql 數(shù)據(jù)文件的存放位置,目錄位置參照本機的設置。
--basedir : msyql 安裝程序的目錄,目錄位置參照本機的設置。
該命令執(zhí)行后,會生成一個臨時的 mysql 數(shù)據(jù)庫 root 用戶的密碼,請先拷貝出來記住,后續(xù)第一次登錄 mysql 需要使用
查看 mysqld

執(zhí)行初始化命令:

密碼: T/>%LuYxa4MS
9.啟用安全功能
在服務器與客戶機之間來回傳輸?shù)乃袛?shù)據(jù)進行加密。通過證書提供了身份驗證機制,mysql 命令程序,mysql_ssl_rsa_setup 提供了開啟數(shù)據(jù)加密功能,生成數(shù)字證書。在mysql-5.7.18/bin目錄下執(zhí)行命令:
./mysql_ssl_rsa_setup --datadir=/usr/local/mysql-5.7.18/data

10.修改mysql 安裝目錄的權限
mysql安裝后,需要更改mysql-5.7.18整個文件夾目錄權限,更改所屬的用戶和組,是之前創(chuàng)建的mysql用戶。在mysql安裝目錄的上級(/usr/local/)位置,執(zhí)行命令chown。
例 如 :chown -R mysql:mysql /usr/local/mysql-5.7.18/
mysql:mysq 表示文件夾的所屬用戶,所屬組參數(shù)說明:
R : 表示遞歸,更改目錄中所有子文件夾的權限。查看原目錄所有者

執(zhí)行修改命令:chown -R mysql:mysql /usr/local/mysql-5.7.18/

mysqld_safe程序會在啟動MySQL服務器后繼續(xù)監(jiān)控其運行情況,并在其死機時重新啟動它 。用mysqld_safe程序來啟動MySQL服務器的做法在unix/linux系統(tǒng)上很常見

11.啟動
啟動MySQL服務,mysql-5.7.18/bin目錄下執(zhí)行命令:./mysqld_safe &(其中 & 符號表示后臺啟動),輸入命令后按Enter
確認 msyql 是否啟動,查看進程 ,使用 ps -ef | grep mysql

12.使用 mysql 客戶端進入
登錄進入mysql,mysql-5.7.18/bin目錄下執(zhí)行命令:./mysql -uroot -p-u 表示使用root用戶登錄系統(tǒng),使用第8步生成的密碼。
-p 表示使用密碼登錄
例如:mysql-5.7.18/bin 下執(zhí)行 ./mysql -uroot -p 然后 Enter, 在提示符下輸入密碼

13.修改 root 密
第 8 步的 root 用戶密碼是臨時要修改才能使用。
執(zhí)行sql語句 show databases; 第一次使用將會提示修改mysql的root用戶密碼:

修改mysql的密碼,命令語法:alter user '用戶名'@'主機域名或ip' identified by '新密碼'
例如 :alter user 'root'@'localhost' identified by '123456';

14.授權遠程訪問
授權遠程訪問,在沒有授權之前只能在本機訪問msyql, 遠程授權就是讓其他計算機通過網(wǎng)絡訪問
mysql(這樣遠程客戶端才能訪問) 授權命令:grant
語法:grant all privileges on *.* to root@'%' identified by '123456';
參數(shù):其中*.* 的第一個*表示所有數(shù)據(jù)庫名,第二個*表示所有的數(shù)據(jù)庫表;
root@'%' 中的root表示用戶名,%表示ip地址,%也可以指定具體的ip地址,比如root@localhost,root@192.168.10.129
①執(zhí)行授權命令
例 如 :grant all privileges on *.* to root@'%' identified by '123456';

②更新權限信息,執(zhí)行flush刷新權限例 如 :flush privileges;

15.測試 mysql 客戶端訪問 mysql
然后就可以使用 mysql 數(shù)據(jù)庫了,可以在命令行 和 遠程客戶端分別連接 msyql。
HeidiSQL: 官方網(wǎng)站https://www.heidisql.com/
Navicat: 官方網(wǎng)站 :http://www.navicat.com/
SQLyog: 官方網(wǎng)站:http://www.webyog.com/
舉例:使用 Navicat 連接 Linux 上的 mysql
① 打開 Navicat 軟件,新建連接

② 點擊“連接測

連接錯誤:可能是 Linux 的防火墻起作用。可以將防火墻先關閉操作防火墻的命令:
查看防火墻狀態(tài):systemctl status firewalld
讓防火墻可用:systemctl enable firewalld 讓防火墻不可用:systemctl disable firewalld 開啟防火墻:systemctl start firewalld
禁用防火墻:systemctl stop firewalld
查看防火墻狀態(tài):在 linux 命令行執(zhí)行

關閉防火墻(本機會話關閉):

測試客戶端的訪問:

16.關閉MySQL服務
① 在 msyql 客戶端,執(zhí)行 exit 退出 msyql 自己的客戶端

②關閉,停止mysql服務器
mysql-5.7.18/bin目錄下執(zhí)行: ./mysqladmin -uroot -p shutdown 輸入密碼關閉

查看 mysql 進程,已經(jīng)沒有