1.下載mysql
到清華源下載相應的鏡像版本。可以達到滿速。
https://mirrors.tuna.tsinghua.edu.cn/mysql/downloads/MySQL-5.7/
2.解壓
tar -xzvf ~/Download/mysql-5.7.17-linux-glibc2.5-x86_64.tar.gz
3.移動並修改名字
mv ~/Download/mysql-5.7.17-linux-glibc2.5-x86_64 /usr/local/mysql
4.創建mysql數據庫存放的路徑
mkdir /usr/local/mysql/data
5.安裝依賴
默認需要這兩個依賴,沒有會報.so文件找不到。
sudo pacman -S numactl
sudo pacman -S ncurses5-compat-libs
6.創建用戶組
cd /usr/local
sudo groupadd mysql //創建用戶組mysql
sudo useradd -r -g mysql mysql //-r參數表示mysql用戶是系統用戶,不可用於登錄系統,創建用戶mysql並將其添加到用戶組mysql中
sudo chown -R mysql mysql/
sudo chgrp -R mysql mysql/
7.創建配置文件,並設置文件權限(很重要)
vim /etc/my.cnf
sudo chmod 644 my.cnf
添加文件內容
其中skip-grant-tables這個選項可以跳過默認密碼。
初始化的時候不會創建一個臨時密碼。登錄的時候直接回車登錄。
[client]
default-character-set=utf8
port = 3306
socket = /tmp/mysql.sock
[mysql]
default-character-set=utf8
port = 3306
socket = /tmp/mysql.sock
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/tmp/mysql.sock
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
#不區分大小寫
lower_case_table_names = 1
sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
max_connections=5000
default-time_zone = '+8:00'
#開啓查詢緩存
explicit_defaults_for_timestamp=true`在這裏插入代碼片`
skip-grant-tables
8.切換到/var/log/創建日誌文件mysqld.log並設置讀寫權限 。
cd /var/log
touch mysqld.log
chmod 777 mysqld.log
9.切換到mysql目錄下初始化數據庫。
cd /usr/local/mysql
sudo bin/mysqld --initialize --user=mysql
10.啓動mysql
sudo /usr/local/mysql/support-files/mysql.server start
11.登錄
切換到mysql目錄下執行登錄命令bin/mysql -u root -p,如果提示輸入密碼直接回車就行了。前提是在上面的配置文件裏面開啓了skip-grant-tables這個選項。不然需要輸入默認生成的臨時密碼。