在虛擬機上安裝好centOS系統之后,使用的是最小安裝的方式,所以在安裝MySQL數據庫的時候遇到了這樣那樣的問題,為了以后安裝的順利,因此在此記錄整個安裝過程。
一、下載MySQL裝包
下載地址:https://dev.mysql.com/downloads/mysql/
本人使用的是虛擬機上的centOS7,所以在下載的時候選擇的是Linux版本,版本號為5.7.32
二、上傳到虛擬機
使用secureCRT軟件與虛擬機建立SFTP連接,定位到宿主機剛剛下載的文件的位置,使用put上傳到虛擬機上。
三、檢查是否自帶MySQL
centos7自帶是mariadb,一個mysql的變種,使用命令rpm -qa | grep mysql*
可以查看系統上是否有已經安裝的MySQL。
四、檢查是否有libaio依賴
確認系統中有libaio依賴,使用如下命令:rpm -qa|grep libaio
,使用該命令后沒有任何效果,說明系統中不存在libaio依賴,需要安裝。同樣通過put命令將下載好的依賴上傳到虛擬機里面,使用rpm -ivh ****.rpm
安裝。
五、新建MySQL用戶組和MySQL用戶
使用命令groupadd mysql
新建用戶組,使用命令useradd mysql -g mysql
新建用戶,使用命令passwd mysql
修改mysql用戶的密碼。新建用戶組成功之后,會在/home目錄下生成mysql文件夾。
六、切換為mysql用戶
使用命令su mysql
切換為mysql用戶
六、將MySQL安裝包解壓到/home/mysql
首先使用命令mv -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz /home/mysql
將mysql安裝包移動到該目錄下,然后使用命令tar -zxvf mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz
,更改文件夾名稱為mysql-5.7.32
七、新建data文件夾
進入到mysql-5.7.32目錄下新建data文件夾。使用命令ls -l
查看該目錄下的文件及文件夾權限歸屬,如果不是mysql用戶,使用命令chown -R mysql:mysql ./
修改文件權限
當所有的文件權限都為mysql時,修改成功
八、安裝mysql
./bin/mysqld --user=mysql --basedir=/home/mysql/mysql-5.7.32 --datadir=/home/mysql/mysql-5.7.32/data --initialize
安裝完成之后會在最后出現隨機生成的登錄密碼,記錄下來,一定要記好
九、修改my.cnf中的內容
my.cnf在/etc目錄下,使用命令vi /etc/my.cnf
[client]
port = 3306
default-character-set=utf8
[mysqld]
basedir = /home/mysql/mysql-5.7.32
datadir = /home/mysql/mysql-5.7.32/data
port = 3306
character-set-server=utf8
default_storage_engine = InnoDB
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
十、開啟mysql服務,命令如下:
./support-files/mysql.server start
十一、將mysql進程放入系統進程中,命令如下:
cp support-files/mysql.server /etc/init.d/mysqld
十二、重新啟動mysql服務
service mysqld restart
十三、建立軟連接
使用命令ln -s /mysql-5.7.32 /usr/bin
十四、使用隨機密碼登錄mysql數據庫
mysql -u root -p
之后會要求輸入密碼,輸入在第八步記下的密碼即可
十五、進入mysql的操作行,設置root用戶的登錄密碼(我設置為rootroot)
alter user 'root'@'localhost' identified by 'rootroot';
在mysql的操作行進行操作的時候,一個語句完成之后一定要加“;”表示語句的結束
十六、設置允許遠程連接數據庫,命令如下:
- 選擇mysql數據庫進行操作,使用命令
use mysql;
ps:可以使用show databases;
查看服務上現在有哪些數據庫。
- 使用如下命令設置允許遠程連接數據庫
update user set user.Host='%' where user.User='root';
成功后可以使用命令select host,user from user;
查看該表內的內容是否修改成功。
十七、開放3306端口
firewall-cmd --zone=public --add-port=3306\tcp --permanent
出現success之后,再使用firewall-cmd --reload
使策略生效
十八、大功告成
在windows系統上可以使用數據庫圖形化管理軟件遠程連接數據庫