安裝包:mysql-8.0.13-1.el7.x86_64.rpm-bundle.tarmysql
解壓縮:sql
root@hostname# tar -xvf mysql-8.0.13-1.el7.x86_64.rpm-bundle.tar服務器
而後依次安裝:tcp
root@hostname# rpm -ivh mysql-community-common-8.0.13-1.el7.x86_64.rpm加密
root@hostname# rpm -ivh mysql-community-libs-8.0.13-1.el7.x86_64.rpmspa
root@hostname# rpm -ivh mysql-community-devel-8.0.13-1.el7.x86_64.rpm //或許會安裝失敗,可已跳過rest
root@hostname# rpm -ivh mysql-community-libs-compat-8.0.13-1.el7.x86_64.rpm日誌
root@hostname# rpm -ivh mysql-community-client-8.0.13-1.el7.x86_64.rpmserver
root@hostname# rpm -ivh mysql-community-server-8.0.13-1.el7.x86_64.rpmip
完成後查看狀態 :
root@hostname# service mysqld status
啓動MySQL:
root@hostname# service mysqld start
設置隨系統自啓動:
root@hostname# systemctl enable mysqld.service
開放端口,添加:
root@hostname# firewall-cmd --zone=public --add-port=3306/tcp --permanent (--permanent永久生效,沒有此參數重啓後失效)
從新載入:
root@hostname# firewall-cmd --reload
查看root用戶初始密碼:
root@hostname# grep 'temporary password' /var/log/mysqld.log
使用初始密碼登錄mysql後修改root密碼:
mysql>SET PASSWORD FOR 'root'@'localhost'= "XXXXXX";
在 /etc/my.cnf 中 mysql 模塊下 添加:skip-grant-tables
wq保存。
重啓MySQL服務:
root@hostname# service mysqld restart
登錄root,此時不須要密碼,
進入後
mysql>use mysql;
mysql> update user set authentication_string = '' where user = 'root';
先將root用戶密碼置空
而後將/etc/my.cnf 中 mysql 模塊下 添加的:skip-grant-tables 刪除
重啓mysql
#mysql -u root -p
由於沒有密碼,因此直接Enter,登錄成功
mysql>ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'XXXXX';
修改root密碼爲XXXXX,加密方式爲:mysql_native_password
mysql> CREATE USER 'scistor'@'%' IDENTIFIED BY ' XXXXX '; //建立普通用戶scister ,密碼爲XXXXX
mysql> GRANT ALL ON *.* TO 'scistor'@'%'; //爲普通用戶開放遠程訪問權限
但此時還不能遠程訪問,Navicat for MySQL11.0.9的加密方式爲mysql_native_password,而新建的用戶沒有指定加密方式,因此遠程登陸失敗,
mysql> ALTER USER 'scistor'@'%' IDENTIFIED WITH mysql_native_password BY ' XXXXX ';
指定加密方式爲mysql_native_password 後,就能夠遠程登陸了
MySQL> flush privileges;
切記,刷新權限
若是已經安裝了MySQL和沒有執行慢速關機就使用innodb_fast_shutdown標誌,只需轉到MySQL目錄/var/lib/mysql/便可,並刪除日誌文件:ib_logfile0ib_logfile1