安裝包請自行在官網下載html
https://dev.mysql.com/downloads/mysql/mysql
一:安裝相關依賴包c++
yum -y install gcc gcc-c++ ncurses-devel perlsql
二:環境配置數據庫
添加系統mysql組和mysql用戶:vim
groupadd mysql服務器
useradd -r -g mysql -s /bin/false mysqlsocket
將mysql命令加進環境變量spa
打開profile插件
vim /etc/profile
PATH=/tools/mysql-8.0.12-el7-x86_64/bin:$PATH
export PATH
讀取profile配置
source /etc/profile
三:安裝mysql
解壓安裝包
mysql目錄結構
目錄 | 目錄的內容 |
---|---|
bin |
mysqld服務器,客戶端和實用程序 |
docs |
信息格式的MySQL手冊 |
man |
Unix手冊頁 |
include |
包含(標題)文件 |
lib |
圖書館 |
share |
用於數據庫安裝的錯誤消息,字典和SQL |
support-files |
其餘支持文件 |
修改當前目錄擁有者爲mysql用戶:
chown -R mysql:mysql ./
配置mysql配置文件
vim /etc/my.cnf
[client]
port=3306 # 設置mysql客戶端鏈接服務端時默認使用的端口
default-character-set=utf8
socket=/tools/mysql-8.0.12-el7-x86_64/data/mysql.sock
[mysqld]
basedir=/tools/mysql-8.0.12-el7-x86_64 # 設置mysql的安裝目錄
datadir=/tools/mysql-8.0.12-el7-x86_64/data
socket=/tools/mysql-8.0.12-el7-x86_64/data/mysql.sock
# Disabling symbolic-links is recommended to prevent assorted security risks
# symbolic-links=0
#
# # 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=/data/log/mysql-log/error.log
# pid-file=/data/soft/mysql-8.0.12-el7-x86_64/data/mysql.pid
#
# #
# # include all files from the config directory
# #
# !includedir /etc/my.cnf.d
初始化數據目錄,包括mysql
包含初始MySQL受權表的 數據庫,該表肯定如何容許用戶鏈接到服務器
bin/mysqld
--initialize-insecure --user=mysql (不設置密碼)
複製啓動腳本
cp support-files/mysql.server /etc/init.d/mysql
啓動數據庫
/etc/init.d/mysql start
修改root密碼
進入mysql
mysql -u root -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'passowrd' ;
ALTER USER 'root'@'%' IDENTIFIED BY 'passowrd' ;
flush privileges;
MySQL8.0的用戶受權和以前有所區別,老版本的經常使用受權語句在8.0中會報錯:
MySQL8.0以前版本:
GRANT ALL ON *.* TO `wangwei`@`127.0.0.1` IDENTIFIED BY 'passowrd' WITH GRANT OPTION;
MySQL8.0版本:
CREATE USER `wangwei`@`127.0.0.1` IDENTIFIED BY 'passowrd';
GRANT ALL ON *.* TO `wangwei`@`127.0.0.1` WITH 「GRANT OPTION」;
mysql-8.0之後的版本,用戶密碼認證的默認方式修改爲caching_sha2_password。
①:此更改僅適用於安裝或升級到MySQL 8.0或更高版本後建立的新賬戶。對於已升級安裝中已存在的賬戶,其身份驗證插件保持不變,仍是mysql_native_password。固然也可使用命令將用戶的身份驗證改成:caching_sha2_password;
如:ALTER USER user IDENTIFIED WITH caching_sha2_password BY 'password';
②:新安裝MySQL8.0的數據庫默認是使用caching_sha2_password身份驗證的,必須使用5.8版本安裝包內的客戶端軟件登陸數據庫,若是要更改root用戶的身份認證方式,可使用命令:ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
caching_sha2_password兼容性問題和解決方案
若是您的MySQL安裝必須服務於8.0以前的客戶端,而且在升級到MySQL 8.0或更高版本後遇到兼容性問題,解決這些問題並恢復8.0以前的兼容性的最簡單方法是從新配置服務器以恢復到之前的默認身份驗證插件(mysql_native_password)。例如,在配置文件my.cnf中使用如下行:
[mysqld]
default_authentication_plugin=mysql_native_password