MySQL是一個非常常用的關係型數據庫管理系統,但在一些情況下我們需要關閉MySQL,例如:系統維護及數據庫升級。本文將從不同角度介紹MySQL關閉的相關內容,包括關閉命令、關閉後的處理、關閉安全模式等各方面。
一、關閉命令
1、通過MySQL命令行關閉
mysqladmin -u root -p shutdown
此命令需要先以root用戶身份登錄MySQL,執行後MySQL服務即會被關閉。
2、通過systemctl命令關閉
systemctl stop mysql.service
systemctl命令在Ubuntu等許多Linux發行版上都適用,關閉MySQL服務後不會清除實例數據。
3、通過kill命令強制關閉
kill `cat /mysql/run/mysql.pid`
如果MySQL服務異常無法關閉,可以採用kill命令強制關閉MySQL服務,通過查看進程ID,輸入命令即可完成關閉。
二、關閉MySQL進不了系統
如果關閉MySQL後無法進入系統,可以嘗試以下方法:
1、檢查MySQL的端口是否正常
sudo netstat -tlpn | grep mysql
如果MySQL的端口已被佔用,會導致MySQL無法正常開啟,需要殺掉佔用端口的進程。
2、檢查是否存在損壞的文件
sudo mysqlcheck --all-databases --check 前綴 -u 用戶名 -p 密碼
使用mysqlcheck命令檢查數據庫是否損壞。此處“前綴”為MySQL實例的文件前綴。
三、關閉MySQL SSL
如果服務器上已經配置了MySQL SSL,則關閉MySQL SSL:
UPDATE mysql.user SET ssl_cipher='' WHERE ssl_cipher IS NOT NULL; FLUSH PRIVILEGES;
四、關閉MySQL啟動時使用的“安全模式”
1、通過跳過MySQL的權限檢查關閉
sudo /usr/sbin/mysqld --skip-grant-tables --skip-networking & mysql -u root mysql
該方式會跳過MySQL的權限檢查,進入MySQL後可以直接更改密碼或添加用戶。
2、通過停止MySQL服務啟動及其修復
sudo service mysql stop sudo mysql_install_db --user=mysql --basedir=/usr --datadir=/var/lib/mysql sudo service mysql start
執行後,MySQL將以非安全模式重新啟動,強制使用更改過的root密碼登錄,重新啟用MySQL的權限檢查。
五、關閉MySQL數據庫命令
關閉MySQL數據庫的命令為“mysqladmin -u username -p password shutdown”。
六、關閉MySQL服務命令
關閉MySQL服務的命令為“systemctl stop mysql.service”。
七、關閉MySQL嚴格模式
在MySQL數據庫中,如果啟用了嚴格模式,執行INSERT、UPDATE或DELETE時,如果數據違反了列定義,將會產生錯誤,需採用以下方式關閉:
SET sql_mode='NO_ENGINE_SUBSTITUTION';
八、關閉MySQL防火牆命令
關閉MySQL防火牆的命令為:
sudo ufw disable
需要同時關閉防火牆的MySQL端口。
總結
本文詳細介紹了MySQL關閉命令及其相關操作方式,從關閉命令到關閉SSL、關閉安全模式、關閉嚴格模式等多個方面進行了闡述,並給出了詳細的代碼示例。在實際的MySQL使用中,關閉MySQL是一項非常重要的操作,我們需要謹慎操作,並根據實際情況選擇合適的方法。
原創文章,作者:XNIS,如若轉載,請註明出處:https://www.506064.com/zh-hant/n/136716.html