linux下安裝mysql:
1.下載mysql安裝包
進入到mysql官網下載mysql編譯好的二進制安裝包,我們需要下載mysql-5.7.22 64位版本。
MySQL 官方下載地址: https://dev.mysql.com/downloads/mysql/
MySQL5.7.22 64位下載地址:https://dev.mysql.com/downloads/file/?id=476936
進入到MySQL5.7.22 64位下載地址,點擊 No thanks, just start my download.(不登錄進行下載),進行下載
2.上傳並解壓jar包
通過ssh來連接linux,並上傳解壓jar包:
輸入用戶名,密碼進行登錄到文檔模式,將文件上傳到/usr/mysql-5.7.22 文件夾中
通過命令窗口,對mysql安裝包進行解壓:
cd usr/mysql-5.7.22/
tar -zxvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
對解壓目錄進行重命名:
mv mysql-5.7.22-linux-glibc2.12-x86_64 mysql-5.7.22
3.添加用戶組和用戶
添加系統mysql組
groupadd mysql
添加mysql用戶到用戶組mysql
useradd -g mysql mysql
(添加完成後可用id mysql
查看)
id mysql
4.安裝數據庫
切換到mysql安裝目錄:
cd /usr/mysql-5.7.22/mysql-5.7.22/
在mysql目錄下創建data目錄:
mkdir data
修改當前目錄擁有者爲mysql用戶:
chown -R mysql:mysql ./
安裝數據庫:
bin/mysqld --initialize --user=mysql --basedir=/usr/mysql-5.7.22/mysql-5.7.22 --datadir=/usr/mysql-5.7.22/mysql-5.7.22/data
生成的臨時密碼,注意:密碼要記住,修改密碼的時候要用到,默認的隨機密碼是沒辦法直接對數據庫做操作的,需要修改密碼,5.7版本用了validate_password密碼加強插件,因此在修改密碼的時候絕對不是 123456 能糊弄過去的。需要嚴格按照規範去設置密碼.
創建RSA private key ,執行以下命令:
bin/mysql_ssl_rsa_setup --datadir=/usr/mysql-5.7.22/mysql-5.7.22/data
將mysql-5.7.22/目錄下除了data/目錄的所有文件,改回root用戶所有
chown -R root .
mysql用戶只需作爲mysql-5.7.22/data/目錄下所有文件的所有者
chown -R mysql data
5.配置my.cnf
vim /etc/my.cnf
[mysqld]
basedir=/usr/mysql-5.7.22/mysql-5.7.22
datadir=/usr/mysql-5.7.22/mysql-5.7.22/data
socket=/tmp/mysql.sock
user=mysql
tmpdir=/tmp
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
log-error=/usr/mysql-5.7.22/mysql-5.7.22/data/error.log
pid-file=/usr/mysql-5.7.22/mysql-5.7.22/data/mysql.pid
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
保存並退出
6.添加開機啓動
cp /usr/mysql-5.7.22/mysql-5.7.22/support-files/mysql.server /etc/init.d/mysqld
修改啓動文件:
vim /etc/init.d/mysqld
向下翻找到basedir,datadir,添加以下信息:
basedir=/usr/mysql-5.7.22/mysql-5.7.22
datadir=/usr/mysql-5.7.22/mysql-5.7.22/data
保存並退出
加入環境變量,編輯 /etc/profile,這樣可以在任何地方用mysql命令了
vi /etc/profile
添加mysql路徑,加入下面的內容,保存並退出:
export PATH=$PATH:/usr/mysql-5.7.22/mysql-5.7.22/bin
刷新立即生效
source /etc/profile
7.啓動mysql
service mysqld start
如啓動失敗,刪除 /usr/mysql-5.7.22/mysql-5.7.22/data下所有文件,重新執行 bin/mysqld --initialize --user=mysql --basedir=/usr/mysql-5.7.22/mysql-5.7.22 --datadir=/usr/mysql-5.7.22/mysql-5.7.22/data再啓動
8.修改登錄密碼,修改遠程連接的用戶權限問題
mysql -uroot -p
輸入上面的臨時密碼:
登錄成功以後先修改密碼。用戶名:root ,密碼:root 此賬號密碼只能在本地使用,因爲連接權限爲localhost:
alter user 'root'@'localhost' identified by 'root';
修改成功以後刷新一下權限
flush privileges;
授權一個新用戶,用戶名:root01,密碼:root ,此用戶可以用於遠程連接,因爲連接權限爲%,表示全部:
GRANT ALL PRIVILEGES ON *.* TO 'root01'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;
9.設置完成以後,連接客戶端
在Windows端的Navicat Premium來進行鏈接數據庫:
9.1 新建鏈接:
9.2 輸入鏈接信息
連接名:隨便輸入
主機名或ip地址:輸入linux的ip地址(一定要關閉防火牆,不然連接不到,可以在本地ping一下虛擬機的ip地址,看是否能連通,linux的ip地址,在命令端輸入:ifconfig來查看ip地址)
端口號:默認端口3306
用戶名:我們通過第8步,授權的新用戶來進行鏈接
密碼:第8步,授權的新用戶密碼
9.3 是否連接成功,點擊連接測試。