Linux Centos上安裝 MySQL 8.0.16
前言:
因為我在我的Linux上安裝的是Centos系統,本次安裝對於我們這些不太熟悉Liunx作業系統的小白使用的是映象下載安裝,這樣子我們只需要輸入一些簡單的命令即可,當然你也可以下載壓縮包自己完成一些初始化的配置與安裝。使用這種方式的話大家可以檢視一些這篇部落格進行安裝,該作者寫的相對的詳細: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.安裝所有更新軟體 yum update 4.安裝MySQL服務 yum install mysql-server
第三步: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連線資料庫:
&n