在 CentOS 7 中設置 mysql root 密碼
Centos7如何登錄mysql 5.6命令行客戶端並重置root密碼?
我在此連結上閱讀了以下內容,但它不起作用:
1) sudo service mysqld stop 2) sudo service mysqld startsos 3) mysql -u root 4) Now you will be at mysql prompt. Here type:- 4.1) UPDATE mysql.user SET Password=PASSWORD('NewPassHere') WHERE User='root'; 4.2) FLUSH PRIVILEGES; 4.3) quit; 5) sudo service mysqld restart
上述步驟 1) 導致:
[root@localhost ~]# sudo service mysqld stop Redirecting to /bin/systemctl stop mysqld.service Failed to issue method call: Unit mysqld.service not loaded.
上面的步驟 3) 導致:
-bash: syntax error near unexpected token `('
當我將第 3 步更改為 時
UPDATE mysql.user SET Password='NewPassHere' WHERE User='root';
,出現以下錯誤:bash:更新:找不到命令…
su -
當我輸入成為root
,然後mysql - u root
在下一個提示符下輸入時,我似乎確實能夠進入 mysql 。但是上面的 5 個步驟命令不起作用,即使我刪除了這個詞sudo
和/或service
用systemctl
. 從設置 root 密碼開始,如何在 CentOS 7 中獲得對 mysql 5.6 命令行的工作訪問權限?
有時你可以破壞你的配置。因此,重新開始會更容易,就好像從未安裝過該軟體包一樣。在您的情況下,我們正在研究 MySQL。
- 我們使用 Yum 來刪除 MySQL,如下所示:
yum remove mysql mysql-server
2. 刪除 MySQL 後,我們可以安全地備份配置:
mv /var/lib/mysql /var/lib/mysql_old_backup
如果您想刪除它,請發出:
rm -vR /var/lib/mysql
3. 現在我們可以安全地重新安裝 MySQL,使用來自官方 MySQL 儲存庫的包中包含的預設配置(我們需要wget
獲取將更新您的儲存庫的 rpm):
yum install wget
4. 現在下載並安裝儲存庫:
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm && rpm -ivh mysql-community-release-el7-5.noarch.rpm
5. 驗證儲存庫是否已安裝:
ls -1 /etc/yum.repos.d/mysql-community*
6. 發出實際的安裝命令(這將用mysql-server
上游 MySQL 的官方包替換 CentOS 儲存庫中的):
yum install mysql-server
7. 使用提供的腳本設置 root 密碼,現在我們再次進行了全新安裝:mysql_secure_installation
如果您在使用腳本後需要設置密碼,請使用:
mysql -u root
8. 現在你可以使用標準的命令systemctl
來systemd
啟動和停止守護程序,如下所示:
systemctl start mysqld
參考
在 RHEL/Centos 7 上安裝最新的 MySql 5.7。有幾個步驟如下:
步驟 1-: 添加以下 EPEL 儲存庫
$ sudo rpm -iUvh http://dev.mysql.com/get/mysql57-community-release-el7-7.noarch.rpm
步驟 2-: 使用下面的 yum 安裝程序安裝 MySql 伺服器。
$ sudo yum 安裝 mysql 伺服器
步驟 3-: 添加到系統啟動並啟動 Mysql 伺服器。
$ sudo systemctl 啟用 mysqld $ sudo systemctl 啟動 mysqld
步驟 4-: 重置 MySql 伺服器根密碼。
sudo grep '臨時密碼' /var/log/mysqld.log
輸出類似的東西-:
10.744785Z 1 【注意】為root@localhost生成一個臨時密碼:o!5y,oJGALQa
在重置 mysql_secure_installation 過程中使用上述密碼。
$ sudo mysql_secure_installation 保護 MySQL 伺服器部署。 輸入使用者 root 的密碼: 'validate_password' 外掛安裝在伺服器上。 後續步驟將使用現有配置執行 的外掛。 使用現有的 root 密碼。 估計密碼強度:100 更改root密碼?(((按 y|Y 表示是,任何其他鍵表示否):y 新密碼: 重新輸入新的密碼: 估計密碼強度:100 您希望使用提供的密碼繼續嗎?(按 y|Y 表示是,任何其他鍵表示否):y 預設情況下,MySQL 安裝有一個匿名使用者, 允許任何人無需登錄 MySQL 為他們創建的使用者帳戶。這僅適用於 測試,並使安裝更順暢。 您應該在進入生產之前刪除它們 環境。 移除匿名使用者?(按 y|Y 表示是,任何其他鍵表示否):y 成功。 通常,應該只允許 root 從 '本地主機'。這確保了有人無法猜測 來自網路的root密碼。 遠端禁止root登錄?(按 y|Y 表示是,任何其他鍵表示否):y 成功。 預設情況下,MySQL 帶有一個名為“test”的數據庫, 任何人都可以訪問。這也僅用於測試, 並且應該在進入生產之前被刪除 環境。 刪除測試數據庫並訪問它?(按 y|Y 表示是,任何其他鍵表示否):y - 刪除測試數據庫... 成功。 - 刪除測試數據庫的權限... 成功。 重新載入權限表將確保所有更改 到目前為止所做的將立即生效。 現在重新載入權限表?(按 y|Y 表示是,任何其他鍵表示否):y 成功。 全部做完!
您已成功重置 MySql Server 的 root 密碼。
步驟 5-: 使用以下命令檢查 mysql 伺服器是否連接。
$ mysql -u root -p
輸出-:
歡迎使用 MySQL 監視器。命令以 ; 結尾 或\g。 您的 MySQL 連接 ID 是 9 伺服器版本:5.7.12 MySQL 社區伺服器(GPL) 版權所有 (c) 2000, 2016,Oracle 和/或其附屬公司。版權所有。 Oracle 是 Oracle Corporation 和/或其 附屬公司。其他名稱可能是其各自的商標 擁有者。 輸入“幫助”;或 '\h' 尋求幫助。鍵入 '\c' 以清除目前輸入語句。 mysql>