MySQL8安裝、忘記密碼、遠程登錄

服務器(CentOS7)上mysql8 安裝

安裝包: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";

 

MySQL8忘記root密碼解決方案

在 /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

 

MySQL8用戶遠程登陸失敗解決方案

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

相關文章
相關標籤/搜索