刪除資料庫是不可逆的高風險操作,務必謹慎執行。本文詳細說明透過 mysqladmin 命令列工具與 PHP 腳本兩種主流方式執行 DROP DATABASE,並強調關鍵的安全確認機制與最佳實務建議。
mysqladmin 是 MySQL 官方提供的管理客戶端,支援互動式確認提示,有效防止誤操作。
DROP 權限的帳號(通常為 root)登入mysqladmin -u root -p drop TUTORIALSDropping the database is potentially a very bad thing to do. Any data stored in the database will be destroyed. Do you really want to drop the 'TUTORIALS' database [y/N] y Database "TUTORIALS" dropped
y 才執行,降低手滑風險--defaults-extra-file 指定唯讀密碼檔,避免明文密碼出現在歷史指令-f (force) 參數跳過確認,適合經過嚴格審核的自動化部署流程透過 mysql_query() 執行 DROP DATABASE SQL 陳述式,注意此函數已於 PHP 7.0 棄用、PHP 8.0 移除,新專案請改用 mysqli 或 PDO。
<?php
$dbhost = 'localhost:3306';
$dbuser = 'root';
$dbpass = 'rootpassword';
$conn = mysqli_connect($dbhost, $dbuser, $dbpass);
if (!$conn) {
die('連線失敗: ' . mysqli_connect_error());
}
echo '連線成功<br />';
$sql = 'DROP DATABASE TUTORIALS';
$retval = mysqli_query($conn, $sql);
if (!$retval) {
die('刪除資料庫失敗: ' . mysqli_error($conn));
}
echo "資料庫 TUTORIALS 刪除成功\n";
mysqli_close($conn);
?>
mysqldump --single-transaction --routines --triggers)無論採用哪種方式,「先備份、再確認、後執行」是刪除資料庫的鐵律。建議生產環境統一使用 mysqladmin 或經過強化的自動化流程,避免直接在 Web 介面或腳本中暴露高危操作。