Linux安裝mysql5.7

一、下載

1.1、網盤鏈接

mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz安裝包
鏈接:https://pan.baidu.com/s/1mqK5jZrwkU4IIECZf8y2rQ提取碼:yu4x

1.2、官網地址

鏈接:https://dev.mysql.com/downloads/mysql/5.7.html#downloads

1.3、weget

wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

二、部署

2.1、安裝

tar -xvf mysql-5.7.32-linux-glibc2.12-x86_64.tar.gz

2.2、移動并重命名

mv mysql-5.7.32-linux-glibc2.12-x86_64 /usr/local/mysql

2.3、創建mysql用戶組和用戶并修改權限

groupadd mysql
useradd -r -g mysql mysql

2.4、創建數據目錄并賦予權限

#創建目錄
mkdir -p  /usr/local/mysql/data     
#賦予權限               
chown mysql:mysql -R /usr/local/mysql               

2.5、配置my.cnf

vim /etc/my.cnf

修改內容成,配置文件整體替換為

[mysqld]
bind-address=0.0.0.0
port=3306
user=mysql
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/usr/local/mysql/data/mysql.err
pid-file=/usr/local/mysql/data/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true

2.6、初始化數據庫

#進入mysql的bin目錄
cd /usr/local/mysql/bin/
#初始化
./mysqld --defaults-file=/etc/my.cnf --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql --initialize
#查看密碼
cat /usr/local/mysql/data/mysql.err

2.7、啟動mysql

#先將mysql.server放置到/etc/init.d/mysql中
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql
#啟動
service mysql start
#查看
ps -ef|grep mysql

到這里說明mysql已經安裝成功了!!


2.8、更改root 密碼

首先登錄mysql,前面的那個是隨機生成的。

#bin目錄下,登錄
./mysql -u root -p   
#密碼123456
SET PASSWORD = PASSWORD('123456');
#給root賦予權限
ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;
#刷新權限
FLUSH PRIVILEGES; 

2.9、設置允許遠程登錄

 #訪問mysql庫
use mysql 
#使root能再任何host訪問                                          
update user set host = '%' where user = 'root';   
#刷新權限   
FLUSH PRIVILEGES; 

2.10、添加軟鏈接

如果不希望每次都到bin目錄下使用mysql命令則執行以下命令

ln -s  /usr/local/mysql/bin/mysql    /usr/bin

2.11、設置開機啟動

#將服務文件拷貝到init.d下,并重命名為mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#賦予可執行權限
chmod +x /etc/init.d/mysqld
#添加服務
chkconfig --add mysqld
#顯示服務列表
chkconfig --list

三、常見問題

3.1、異常報錯Access denied for user ‘root’@’localhost’ (using password: YES)

第一步:

1)關閉mysql服務

service mysql stop

2)修改文件my.cnf,在文件中添加skip-grant-tables

vim /etc/my.cnf
[mysqld]
skip-grant-tables

3)啟動mysql服務

service mysql start

第二步:

1)登錄mysql,會跳過驗證隨意輸入密碼

mysql -u root -p

2)修改root權限,設置密碼

use mysql 
#這時候我們需要給root以更新的權限
update user set Update_priv='Y' where user='root'; 
#然后是設置權限的權限
update user set Grant_priv ='Y' where user ='root'; 
#刷新權限
flush privileges;   
#密碼123456
grant all privileges on *.* to root@'localhost' identified by "123456" with grant option;  
flush privileges;

第三步

刪除配置文件my.cnf中skip-grant-tables。重新啟動服務。

3.2、異常報錯Host is not allowed to connect to this MySQL server

遠程登錄開啟失敗,參考上面步驟重新設置。

最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容