centos7安裝mysql8.x.tar壓縮包


一、查看mariadb的相關包並卸

1.使用 rpm -qa | grep mariadb 命令查看;
顯示為:mariadb-libs-5.5.56-2.el7.x86_64
2.使用 rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64 命令卸載;

二、安裝mysql數據庫

1.下載安裝文件

下載地址:https://downloads.mysql.com/archives/community/

后綴件為:mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz,其他8.0版本也可,更具需要選擇,並將該文件移動到 /usr/local/目錄下。

2.解壓縮包,命令,分兩步:

第一步,使用xz -d 命令將xxx.tar.xz壓縮包解壓成xxx.tar,如下:
xz –d mysql-8.0.16-linux-glibc2.12-x86_64.tar.xz

第二步,使用tar -vxf命令將xxx.tar壓縮包解壓,如下:
tar -xvf mysql-8.0.16-linux-glibc2.12-x86_64.tar

3.給包重命名為mysql
mv mysql-8.0.16-linux-glibc2.12-x86_64 /usr/local/mysql


4.檢查mysql組和用戶是否存在,如無創建
創建mysql用戶組
groupadd mysql
useradd -g mysql mysql

5.進入mysql目錄並創建data目錄;
cd /usr/local/mysql
mkdir data

[root@localhost /]# cd /usr/local/
[root@localhost local]# mkdir data

6.賦權限給相關目錄

[root@localhost local]# chmod -R 777 /usr/local/mysql
[root@localhost local]# chmod -R 777 /usr/local/mysql/data/


7.將mysql目錄的權限授給mysql用戶和mysql組;
[root@localhost local]# chown -R mysql:mysql /usr/local/mysql

8.新建mysql配置文件 my.cnf

[root@localhost local]# vi /etc/my.cnf

配置文件內容如下:

[mysqld]
# 設置3306端口
port=3306
# 設置mysql的安裝目錄
basedir=/usr/local/mysql
# 設置mysql數據庫的數據的存放目錄
datadir=/usr/local/mysql/data
# 允許最大連接數
max_connections=10000
# 允許連接失敗的次數。這是為了防止有人從該主機試圖攻擊數據庫系統
max_connect_errors=10
# 服務端使用的字符集默認為UTF8
character-set-server=utf8
# 創建新表時將使用的默認存儲引擎
default-storage-engine=INNODB
# 默認使用“mysql_native_password”插件認證
default_authentication_plugin=mysql_native_password
#sql_model 去掉ONLY_FULL_GROUP_BY
sql-mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION
[mysql]
# 設置mysql客戶端默認字符集
default-character-set=utf8
[client]
# 設置mysql客戶端連接服務端時默認使用的端口
port=3306
default-character-set=utf8

 

配置好文件,附文件權限:

chmod -R 777 /etc/my.cnf  #特別注意,這個是所有用戶都可讀寫,由於mysql的安全機制,這種權限可能會被忽視掉,導致配置文件my.cnf不生效

chmod 644 /etc/my.cnf #建議用這個,用戶可讀寫,其他用戶不可寫.

[root@localhost local]# chmod 644 /etc/my.cnf

9.進入mysql 安裝目錄下:
 [root@localhost local]# cd/usr/local/mysql/bin/
安裝MySQL,並記住隨機生成的密碼,每次生成都不一樣:
[root@localhost bin]# ./mysqld --initialize --console

error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
出現該問題首先檢查該鏈接庫文件有沒有安裝使用 命令進行核查

rpm -qa|grep libaio   

運行該命令后發現系統中無該鏈接庫文件

使用命令,yum install  libaio-devel.x86_64

安裝成功后,繼續運行數據庫的初始化命令,提示成功

10.啟動mysql

[root@localhost bin]# cd /usr/local/mysql/support-files/
[root@localhost support-files]# ./mysql.server start

可能會出現下面的錯誤:

解決辦法是查看錯誤文件:

[root@localhost support-files]# cd /usr/local/mysql/data

我這里是忘記給文件賦權限,所以執行下:chmod -R 777 /usr/local/mysql/data/

就OK了,其他情況也有可能發生,根據具體情況查看

11.配置環境變量

[root@localhost support-files]# cp mysql.server  /etc/init.d/mysqld
[root@localhost support-files]# service mysqld restart

12.創建軟連接(實現可直接命令行執行mysql)
ln -s /usr/local/mysql/bin/mysql /usr/bin

[root@localhost support-files]# ln -s /usr/local/mysql/bin/mysql /usr/bin

13.登錄mysql修改默認密碼,創建遠程登錄

[root@localhost mysql]# mysql -uroot -p
修改密碼:ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
修改成遠程登錄用戶:update user set host='%' where user = 'root';
授權:grant all privileges on *.* to 'root'@'%';
刷新權限:flush privileges;
使用native校驗登錄(可以使用Navicat for mysql等工具登錄):ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY '123456';

14.防火牆的設置

查看防火牆狀態
    firewall-cmd --state
如果沒有開啟,則開啟
開啟防火牆: systemctl start firewalld.service
查看監聽的端口: firewall-cmd --list-port
添加3306端口監聽
   firewall-cmd --zone=public --add-port=3306/tcp --permanent
刷新防火牆設置
   firewall-cmd --reload

至此,完成安裝。

15.加入開機啟動

chkconfig --add mysqld

chkconfig mysqld on

文檔整理不易,還請點個贊!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM