準備
一臺裝有centos7.3的電腦(或虛擬機),mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar mysql的rpm安裝集合包
下載地址:https://dev.mysql.com/downloads/mysql/5.7.html#downloads
注意這樣選擇,可以獲得centos支持的版本。
一、安裝環境
我們先把下載的mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar 上傳到我們的centos系統中,最好傳到/opt 文件夾中
然后我們建立一個新的,用于盛放tar文件釋放后文件的文件夾:
-
cd /opt
-
mkdir mysql
然后運行解壓命令:
tar -xf mysql-5.7.23-1.el7.x86_64.rpm-bundle.tar -C mysql
這時,我們再到mysql的目錄下就可以看到解壓出來的rpm包:
資源都準備好了,現在我們來看一下環境:
由于CentOs7之后會在系統中自帶一個免費的數據庫:mariadb,并且它的驅動和mysql的驅動是有沖突的,所以我們必須先要卸載他。(ps.mariadb和mysql是同一個作者創作的數據庫,由于權益等其他問題才分開的,所以有興趣的同志可以研究一下。)
首先用rpm命令查看一下是否有mariadb,然后再刪除:
rpm -qa | grep -i mariadb
可能會出現這種情況:
然后我們用rpm命令刪除這個版本的mariadb:
rpm -e --nodeps mariadb-libs-5.5.52-1.el7.x86_64
這個名字在不同版本的系統上可能不一樣,大家需要注意。
如果是centos7之前的版本的話,可能會自帶mysql,這是我們需要按照上述步驟刪除mysql,這里不再贅述。
由于mysql的server端需要perl語言的支持,因此我們還需要在系統中安裝perl支持:
yum install perl -y
二、安裝
由于我們上面解壓出來的幾個rpm包有依賴關系,所以我們需要按照順序執行安裝:
-
rpm -ivh mysql-community-common-5.7.23-1.el7.x86_64.rpm
-
rpm -ivh mysql-community-libs-5.7.23-1.el7.x86_64.rpm
-
rpm -ivh mysql-community-client-5.7.23-1.el7.x86_64.rpm
-
rpm -ivh mysql-community-server-5.7.23-1.el7.x86_64.rpm
這幾個包的安裝完成之后,我們的數據庫也就安裝完成了,有幾個需要注意的地方:
- 數據庫目錄:/var/lib/mysql/
- 命令配置:/usr/share/mysql (mysql.server命令及配置文件)
- 相關命令:/usr/bin (mysqladmin mysqldump等命令)
- 啟動腳本:/etc/rc.d/init.d/ (啟動腳本文件mysql的目錄)
- 系統配置:/etc/my.conf
三、運行-初始化
安裝完成了,我們需要先把mysql運行起來,這樣我們才能進行接下來的配置。
ps.強烈建議在root用戶環境下進行初始化配置,方便用戶和密碼的創建。
現在我們可以先看一下 /var/lib/mysql/ 目錄下是否有東西,我們可以發現這個目錄下是沒有東西的,或者是連mysql這個目錄都沒有,也就是說數據庫還沒有初始化。
注意:
這里我跳過了初始化root用戶,或者是mysql用戶的步驟,因為網上看在5.7.12上可以成功的步驟在5.7.23上卻會在啟動步驟報錯,原因未知。
現在我們來配置mysql的啟動,個人比較推薦使用服務的方式啟動(centos7特有):
systemctl start mysqld.service
這樣就把mysqld這個服務添加到系統中了,我們可以用service進行啟動了,啟動,停止,重啟的命令如下:
啟動:
-
使用 service 啟動:service mysqld start
-
使用 mysqld 腳本啟動:/etc/inint.d/mysqld start
-
使用 safe_mysqld 啟動:safe_mysqld&
停止:
-
使用 service 啟動:service mysqld stop
-
使用 mysqld 腳本啟動:/etc/inint.d/mysqld stop
-
mysqladmin shutdown
重啟:
-
使用 service 啟動:service mysqld restart
-
使用 mysqld 腳本啟動:/etc/inint.d/mysqld restart
我們在啟動了mysql之后,這個時候等待一段時間,數據庫需要進行初始化,這個時候我們可以看一下數據庫的日志,會發現mysql幫我們初始化了一個root用戶:
cat /var/log/mysqld.log
由于服務已經啟動了,所以可以用root和這個密碼登陸了:
mysql -u root -p
password 輸入自己獲得的密碼
修改密碼:
set password = password('你的密碼');
設置外部遠程訪問權限:
-
grant all privileges on *.* to 'root' @'%' identified by '123456';
-
flush privileges;
開放端口:
這里設置完之后,就可以在其他局域網內電腦上用Navicat連接一下看看能不能連接了,如果遇到帶有數字的報錯(非denind)的話,可以嘗試開啟防火墻的端口限制:
-
#開啟3306端口
-
firewall-cmd --zone=public --add-port=3306/tcp --permanent
-
#刷新防火墻
-
firewall-cmd --reload
防火墻操作學習:https://www.cnblogs.com/moxiaoan/p/5683743.html
設置開機啟動:
chkconfig mysqld on
至此,我們的mysql數據庫就已經安裝完成,并能隨系統啟動和外部訪問了。
掃碼二維碼 獲取免費視頻學習資料
- 本文固定鏈接: http://www.wangchenghua.com/post/7571/
- 轉載請注明:轉載必須在正文中標注并保留原文鏈接
- 掃碼: 掃上方二維碼獲取免費視頻資料