Linux服務器搭建——MySQL的安裝

1、刪除系統自帶的mysql或者mariadb

運用rpm命令檢查系統中是否存在MySQL或maridadb

rpm -qa|grep mysql

rpm -qa|grep mariadb

若存在,則執行以下命令刪除:

rpm -e 軟件名

這裏的軟件名必須包含軟件的版本信息

若卸載失敗,執行以下命令強制卸載:

rpm -e --nodeps 軟件名

PS:rpm命令是RPM軟件包的管理工具(參考:https://www.cnblogs.com/ftl1012/p/rpm.html

 

2、運行以下命令安裝MySQL

安裝依賴:

yum install -y libaio-*

創建mysql安裝目錄

mkdir /usr/local/mysql

進入軟件壓縮包管理區域

cd /usr/local/packages

可以在線下載mysql安裝包:

wget https://zy-res.oss-cn-hangzhou.aliyuncs.com/mysql/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

也可以直接上傳(上一篇中有提到)

解壓mysql安裝包(tar的參數中加上了z)

tar -xzvf mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz

移動解壓文件至mysql目錄

mv mysql-5.7.17-linux-glibc2.5-x86_64/* /usr/local/mysql

 

3、依次運行以下命令建立 MySQL 組和用戶,並將用戶添加到組中:

groupadd mysql

useradd -g mysql -s /sbin/nologin mysql

進入安裝目錄:

cd /usr/local/mysql

修改當前目錄擁有者爲mysql用戶:

chown -R mysql:mysql ./

進入scripts文件下

cd scripts

運行命令初始化MySQL數據庫:

./mysql_install_db --datadir=/usr/local/mysql/data/ --basedir =/usr/local/mysql --user=mysql

 

 

若報異常提示mysql.plugin找不到,異常信息,/usr/bin/perl: bad interpreter: No such file or directory,沒有/usr/bin/perl文件或者檔案,則需要安裝perl和perl-devel,執行:

yum -y install perl perl-devel

再次執行數據庫初始化命令,又提示:

FATAL ERROR: please install the following Perl modules before executing /usr/bin/mysql_install_db:

Data::Dumper

則需要安裝dumper,執行:

yum install -y perl-Data-Dumper

再次執行數據庫初始化命令

成功。

4、權限

修改當前目錄擁有者爲root用戶:

chown -R root:root ./

修改當前data目錄擁有者爲mysql用戶:

chown -R mysql:mysql data

 

5、依次運行以下命令設置開機自啓動:

cd /usr/local/mysql/support-files/

cp mysql.server /etc/init.d/mysqld

添加執行權限

chmod +x /etc/init.d/mysqld

vim /etc/rc.d/rc.local

在 rc.local 文件中添加 /etc/init.d/mysqld start

退出編輯,保存

 

6、啓動MySQL數據庫

/etc/init.d/mysqld start

 

7、設置環境變量

運行 vi /root/.bash_profile 打開文件,按 i 進入編輯模式。

將 PATH 修改爲

PATH=$PATH:$HOME/bin:/usr/local/mysql/bin:/usr/local/mysql/lib

按 esc 鍵退出編輯模式,輸入 :wq 保存並關閉文件。

運行 source /root/.bash_profile 重新執行文件。

 

修改 MySQL 的 root 用戶密碼:初始化後 MySQL 爲空密碼可直接登錄,爲了保證安全性需要修改 MySQL 的 root 用戶密碼。mysqladmin -u root password

測試登錄 MySQL 數據庫。 mysql -uroot -p密碼 #-p和密碼之間無空格

遠程數據庫授權:GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root' WITH GRANT OPTION;

使授權生效:FLUSH PRIVILEGES;

ctrl+d 退出mysql

 

8、遠程連接

修改/etc/my.cnf配置文件,添加編碼配置和端口號

查看my.cnf的具體路徑

(參考:

https://blog.csdn.net/djcode/article/details/78621772

https://www.cnblogs.com/sunpear/p/8117113.html

/usr/local/mysql/bin/mysqld --verbose --help |grep -A 1 'Default options'

從5.7.18開始不在二進制包中提供my-default.cnf文件,可以自己新建在指定目錄下,複製必要信息,mysql會在啓動時自動匹配

 

在[mysqld]下添加編碼配置:

[mysqld]

character_set_server=utf8

init_connect='SET NAMES utf8'

修改端口號、開放端口

port=3306

重新啓動mysql服務使配置生效:

systemctl restart mysqld

或者

service restart mysqld

開放端口:

firewall-cmd --zone=public --add-port=3306/tcp --permanent

firewall-cmd --reload

遠程測試連接

 

參考文章:

https://www.cnblogs.com/pretty-sunshine/p/9749450.html

https://www.cnblogs.com/ivictor/p/5727395.html

https://www.cnblogs.com/zhjh256/p/5728878.html

https://blog.csdn.net/lssoop/article/details/80033104

開放端口號

https://www.cnblogs.com/tony-brook/p/9876543.html

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章