下載MySQL
在 linux 下執行下載命令:wget 地址例如:
wget https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
下載好的文件,64 系統使用的 mysql:
1.上傳 MySQL 安裝文件到 Linux
使用 Xftp 上傳文件 mysql-5.7.18-linux-glibc2.5-x86_64.tar
2.檢查系統是否安裝了 mariadb 數據
檢查linux是否安裝了mariadb數據庫,mariadb數據庫是mysql的分支。是免費開源的。mariadb和msyql會有沖突。首先要檢查安裝了mariadb, 卸載掉。
檢查命令 :yum list installed | grep mariadb
3.卸載 mariadb
若linux中安裝了mariadb數據庫,先卸載掉,mariadb數據庫可能與安裝mysql發生沖突,執行命令:yum -y remove mariadb-libs.x86_64
其中 mariadb-libs.x86_64 是第 2 步搜索出來的 mariadb 軟件包,不同機器可能不一樣, -y 參數確認刪除。
等待卸載完成:提示 Complete ,卸載完成
4.安裝
解壓下載的mysql軟件壓縮包,執行命令 :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
查看原文件夾名稱,執行 ll
修改文件夾名稱,執行:mv mysql-5.7.18-linux-glibc2.5-x86_64 mysql-5.7.18
6.創建數據文件夾 data
data文件夾是mysql用來存放數據庫文件的,數據庫的表數據都放在data目錄。
默認沒有data目錄,可以手工創建data目錄,在mysql-5.7.18文件夾目錄下創建一個data文件夾,切換到mysql-5.7.18目錄,執行創建文件夾命令
例 如 :mkdir data
7.創建用戶執行 mysqld 命令
創建mysql用戶,用來執行MySQL的命令mysqld ,此命令用來初始化msyql基礎信息。可以使用其他用戶,例如叫做 mydb.不推薦
參考地址:https://dev.mysql.com/doc/refman/5.7/en/binary-installation.html
執行命令:useradd mysql
使用 mysql 的 mysqld 命令初始化數據庫的基本信息。切換到 mysql-5.7.18/bin 目錄下執行。
命 令 : ./mysqld --initialize --user=mysql --datadir=/usr/local/mysql-5.7.18/data--basedir=/usr/local/mysql-5.7.18
8.初始化
參數說明:
--initialize 初始化 mysql,創建 mysql 的 root, 隨機生成密碼。記住密碼,登錄 msyql 使用。
--user 執行 msyqld 命令的 linux 用戶名
--datadir : mysql 數據文件的存放位置,目錄位置參照本機的設置。
--basedir : msyql 安裝程序的目錄,目錄位置參照本機的設置。
該命令執行后,會生成一個臨時的 mysql 數據庫 root 用戶的密碼,請先拷貝出來記住,后續第一次登錄 mysql 需要使用
查看 mysqld
執行初始化命令:
密碼: T/>%LuYxa4MS
9.啟用安全功能
在服務器與客戶機之間來回傳輸的所有數據進行加密。通過證書提供了身份驗證機制,mysql 命令程序,mysql_ssl_rsa_setup 提供了開啟數據加密功能,生成數字證書。在mysql-5.7.18/bin目錄下執行命令:
./mysql_ssl_rsa_setup --datadir=/usr/local/mysql-5.7.18/data
10.修改mysql 安裝目錄的權限
mysql安裝后,需要更改mysql-5.7.18整個文件夾目錄權限,更改所屬的用戶和組,是之前創建的mysql用戶。在mysql安裝目錄的上級(/usr/local/)位置,執行命令chown。
例 如 :chown -R mysql:mysql /usr/local/mysql-5.7.18/
mysql:mysq 表示文件夾的所屬用戶,所屬組參數說明:
R : 表示遞歸,更改目錄中所有子文件夾的權限。查看原目錄所有者
執行修改命令:chown -R mysql:mysql /usr/local/mysql-5.7.18/
mysqld_safe程序會在啟動MySQL服務器后繼續監控其運行情況,并在其死機時重新啟動它 。用mysqld_safe程序來啟動MySQL服務器的做法在unix/linux系統上很常見
11.啟動
啟動MySQL服務,mysql-5.7.18/bin目錄下執行命令:./mysqld_safe &(其中 & 符號表示后臺啟動),輸入命令后按Enter
確認 msyql 是否啟動,查看進程 ,使用 ps -ef | grep mysql
12.使用 mysql 客戶端進入
登錄進入mysql,mysql-5.7.18/bin目錄下執行命令:./mysql -uroot -p-u 表示使用root用戶登錄系統,使用第8步生成的密碼。
-p 表示使用密碼登錄
例如:mysql-5.7.18/bin 下執行 ./mysql -uroot -p 然后 Enter, 在提示符下輸入密碼
13.修改 root 密
第 8 步的 root 用戶密碼是臨時要修改才能使用。
執行sql語句 show databases; 第一次使用將會提示修改mysql的root用戶密碼:
修改mysql的密碼,命令語法:alter user '用戶名'@'主機域名或ip' identified by '新密碼'
例如 :alter user 'root'@'localhost' identified by '123456';
14.授權遠程訪問
授權遠程訪問,在沒有授權之前只能在本機訪問msyql, 遠程授權就是讓其他計算機通過網絡訪問
mysql(這樣遠程客戶端才能訪問) 授權命令:grant
語法:grant all privileges on *.* to root@'%' identified by '123456';
參數:其中*.* 的第一個*表示所有數據庫名,第二個*表示所有的數據庫表;
root@'%' 中的root表示用戶名,%表示ip地址,%也可以指定具體的ip地址,比如root@localhost,[email protected]
①執行授權命令
例 如 :grant all privileges on *.* to root@'%' identified by '123456';
②更新權限信息,執行flush刷新權限例 如 :flush privileges;
15.測試 mysql 客戶端訪問 mysql
然后就可以使用 mysql 數據庫了,可以在命令行 和 遠程客戶端分別連接 msyql。
HeidiSQL: 官方網站https://www.heidisql.com/
Navicat: 官方網站 :http://www.navicat.com/
SQLyog: 官方網站:http://www.webyog.com/
舉例:使用 Navicat 連接 Linux 上的 mysql
① 打開 Navicat 軟件,新建連接
② 點擊“連接測
連接錯誤:可能是 Linux 的防火墻起作用。可以將防火墻先關閉操作防火墻的命令:
查看防火墻狀態:systemctl status firewalld
讓防火墻可用:systemctl enable firewalld 讓防火墻不可用:systemctl disable firewalld 開啟防火墻:systemctl start firewalld
禁用防火墻:systemctl stop firewalld
查看防火墻狀態:在 linux 命令行執行
關閉防火墻(本機會話關閉):
測試客戶端的訪問:
16.關閉MySQL服務
① 在 msyql 客戶端,執行 exit 退出 msyql 自己的客戶端
②關閉,停止mysql服務器
mysql-5.7.18/bin目錄下執行: ./mysqladmin -uroot -p shutdown 輸入密碼關閉
查看 mysql 進程,已經沒有