liunx 服務器下面安裝mysql8.0

閑來無事,準備自己搭建一個服務器高點事情,不可避免的就是需要使用到mysql數據庫了。在Linux系統安裝MySQL8.0,網上已經有很多的教程了,到自己安裝的時候卻發現各種各樣的問題,現在把安裝過程和遇到的問題都記錄下來。

需要說明的一點是我使用的是ssh 工具連接的騰訊雲linux系統的,它的用法和命令窗口差不多,一樣的使用Linux命令操作。

廢話不多說了,下面直接開干。

 

一、安裝包及安裝路徑準備

1、切換目錄到  /usr/local目錄下,創建mysql文件夾。 

1 cd /use/loca
2 mkdir mysql

 

2、切換到mysql目錄下,下載mysql8.0的安裝包

1 cd mysql
2 wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz

註:如果下載安裝包的時候網絡不是很好,或者其他的原因下載失敗,我們也可以在官網直接下載對應的liunx版本到我們的windows系統中,通過ftp工具上傳到服務器的/usr/local/mysql目錄下。

 

3、解壓我們剛剛下載的mysql安裝包,然後把解壓後的文件目錄名稱修改成更加簡潔的mysql8.0

1 tar xvJf mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz 
2 mv mysql-8.0.20-linux-glibc2.12-x86_64 mysql-8.0

 

4. 在/usr/local/mysql目錄下面創建data目錄,用來存儲mysql的文件數據;創建一個文件用來存放mysql通用日誌,

1 mkdir data
2 touch mysql.log

 

 二、創建liunx用戶組及用戶信息,用來啟動mysql

1、分別創建用戶組以及用戶和密碼

1 groupadd mysql
2 useradd -g mysql mysql

註:如果在創建時提示已存在,說明服務器目前是存在這個用戶組或用戶,可以直接跳過這一步。

 

2、對剛剛創建的用戶進行授權

1 chown -R mysql.mysql /usr/local/mysql/mysql-8.0
2 chown -R mysql.mysql /usr/local/mysql/mysql.log
3 chmod 750 /usr/local/mysql/data -R

 

 

三 、配置mysql啟動的環境

1、編輯/etc/profile文件,配置mysql的全局環境變量

1 vim /etc/profile

  打開文件後,在最後一行加上:

  export PATH=$PATH:/usr/local/mysql/mysql-8.0/bin:/usr/local/mysql/mysql-8.0/lib

  然後退出保存。

 

2、編輯mysql配置文件my.cnf內容

1 vim /etc/my.cnf

然後再文件內複製以下內容直接覆蓋

[mysql]
default-character-set=utf8mb4
[client]
#port=3306
socket=/var/lib/mysql/mysql.sock

[mysqld]
#port=3306
#server-id=3306
user=mysql
general_log = 1
general_log_file= /usr/loacl/mysql/mysql.log
socket=/var/lib/mysql/mysql.sock
basedir=/usr/local/mysql/mysql-8.0
datadir=/usr/local/mysql/data
log-bin=/usr/local/mysql/data/mysql-bin
innodb_data_home_dir=/usr/local/mysql/data
innodb_log_group_home_dir=/usr/local/mysql/data/
character-set-server=utf8mb4
lower_case_table_names=1
autocommit=1
default_authentication_plugin=mysql_native_password
symbolic-links=0
# Disabling symbolic-links is recommended to prevent assorted security risks
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd

[mysqld_safe]
log-error=/usr/local/mysql/data/mysql.log
pid-file=/usr/local/mysql/data/mysql.pid

#
# include all files from the config directory

註:做完前面全部的三大步驟,我們安裝前的準備工作已經完成了,接下來就可以開始初始化基礎信息(安裝)了

 

四、mysql的初始化工作

1.把目錄切換到mysql的bin目錄下

cd /usr/local/mysql/mysql-8.0/bin

 

2.初始化基礎信息,得到數據庫的初始密碼,並記錄下密碼。

1 ./mysqld --user=mysql --basedir=/usr/local/mysql/mysql-8.0 --datadir=/usr/local/mysql/data/ --initialize

 

3.複製 mysql.server 文件,在/usr/local/mysql/mysql-8.0目錄下執行

1 cp -a ./support-files/mysql.server /etc/init.d/mysql 
2 cp -a ./support-files/mysql.server /etc/init.d/mysqld

 

4.賦予權限

1 chown 777 /etc/my.cnf
2 chmod +x /etc/init.d/mysql
3 chmod +x /etc/init.d/mysqld

 

5.檢查一下/var/lib/mysql是否存在,否則進行創建,然後再賦予權限

1 mkdir /var/lib/mysql 
2 chown -R mysql:mysql /var/lib/mysql/ 

 

6.啟動服務的工作就全部準備好了,現在我們啟動mysql

1 service mysql start 

 

五、mysql的啟動工作已經完成,現在我們可以來登錄mysql,修改root賬號密碼

1.修改數據庫root賬號的密碼。

1 ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密碼';
2 flush privileges;

 

2.設置可以遠程訪問(因為root默認是不能遠程訪問的)

1 use mysql;
2 update user set host='%' where user='root';
3 flush privileges;

 

最後就可以使用root賬號去登錄mysql了。如果有遇到問題的小夥伴評論留言,文中如有遺漏錯誤,歡迎指正。

QQ:503900746 

 

Tags: