Linux CentOS上安裝 MySQL 8.0.16
前言:
因為我需要在我新安裝的Linux CentOS系統伺服器中安裝和配置MySQL伺服器,然而對於我們這種Linux使用小白而言在Linux系統中下載,解壓,配置MySQL等一系列的操作還是有些耗時間的。所以小編本次準備使用yum命令在Linux CentOS系統中安裝MySQL伺服器和使用其他命令配置MySQL伺服器的相關配置(純命令操作),這樣子我們只需要輸入一些簡單的命令即可,當然你也可以下載壓縮包自己完成一些初始化的配置與安裝。使用這種方式的話大家可以參考一些部落格進行安裝,該篇部落格寫的相當的詳細:https://blog.csdn.net/github_39533414/article/details/80144890
第一步:檢視系統中是否已存在MySQL,若存在則選擇刪除
這裡我就不詳細講解了,大家可以看我的上一篇部落格,關於如何徹底刪除MySQL資料庫
地址:https://www.cnblogs.com/Can-daydayup/p/10873948.html
第二步:下載並安裝MySQL資料庫
官網下載地址:https://dev.mysql.com/downloads/repo/yum/
選擇red hat版:
複製下載地址:
1.下載映象 wget https://dev.mysql.com/get/mysql80-community-release-el7-3.noarch.rpm 2.安裝映象 rpm -ivh mysql80-community-release-el7-3.noarch.rpm 3.升級系統上的MySQL軟體包 通過以下命令升級MySQL及其相關元件: 方案一.指定更新MySQL伺服器(推薦使用): yum update mysql-server 方案二.通過更新系統上的所有內容來更新MySQL(謹慎使用): 注意,這個方法需要謹慎使用,一般是在空白伺服器的時候可以使用,因為有可能會把你係統中的其他軟體都給升級了 yum update 4.安裝MySQL服務 yum install mysql-server
使用Yum儲存庫升級MySQL軟體包官網概述:https://dev.mysql.com/doc/mysql-repo-excerpt/5.6/en/updating-yum-repo.html
第三步:MySQL檔案許可權設定
chown mysql:mysql -R /var/lib/mysql
第四步:初始化MySQL
mysqld --initialize
第五步:啟動MySQL服務並設定開機自動啟動
#啟動
systemctl start mysqld
#設定開機自動啟動
systemctl enable mysqld
systemctl daemon-reload
注意:我在啟動MySQL服務的時候提示:
Job for mysqld.service failed because the control process exited with error code. See "systemctl status mysqld.service" and "journalctl -xe" for details.
我認為可能和我之前系統安裝過MySQL有關係,解決方法:
chown mysql:mysql -R /var/lib/mysql 在啟動: service mysqld start
檢視執行狀態:
systemctl status mysqld
完美執行:
第六步:檢視當前MsSQL安裝版本
mysqladmin --version
第七步:設定資料庫密碼
原因:在安裝完成MySQL後不會預設設定密碼,需要我們自己設定
mysqladmin -u root password "你的密碼"
我真是一個被老天眷顧的孩子,設定密碼是遇到了一個這樣的問題:
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
一般這個錯誤是由密碼錯誤引起,解決的辦法自然就是重置密碼
解決方案如下:
1.停止mysql資料庫:systemctl stop mysqld
2.用以下命令啟動MySQL,以不檢查許可權的方式啟動:
mysqld --skip-grant-tables &
如果上面的命令無效報錯,則執行下面這段命令:
mysqld --user=root --skip-grant-tables &
3.登入mysql:mysql -u root -p或mysql
4.更新root密碼:
ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
修改密碼的時候提示:
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
解決方法:
重新整理許可權:flush privileges;
5.重新整理許可權:flush privileges;
6.退出mysql:exit或quit
7.使用root使用者重新登入mysql
mysql -uroot -p
Enter password:<輸入新設的密碼123456>
第八步:開啟MySQL遠端
1.登陸資料庫
mysql -u root -p
然後輸入密碼按回車進入MySQL資料庫中
2.建立使用者用來遠端連線:參考該篇部落格:
https://jingyan.baidu.com/article/363872ec3263236e4ba16f07.html
3.查詢資料庫的使用者
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;
4. 更新使用者表:(其中%的意思是允許所有的ip遠端訪問,如果需要指定具體的某個ip就寫上具體的ip即可)
UPDATE user SET `Host` = '%' WHERE `User` = 'root' LIMIT 1;
5. 強制重新整理許可權:
flush privileges;
6.使用Navicat連線資料庫: