首頁 >資料庫 >mysql教程 >如何使用 shell_exec() 從 PHP 執行 MySQL *.sql 檔案?

如何使用 shell_exec() 從 PHP 執行 MySQL *.sql 檔案?

Patricia Arquette
Patricia Arquette原創
2024-12-10 15:45:16469瀏覽

How Can I Execute MySQL *.sql Files from PHP Using shell_exec()?

在 PHP 中執行 MySQL *.sql 檔案

建立網站資料庫時,可能會遇到需要執行 的場景。 PHP 中的 sql 檔案來自動產生網站。雖然 Zend_Framework 可能很有用,但由於 SQL 語句不一致,直接從 PHP 執行 .sql 檔案可能會很困難。

解決方案:使用 shell_exec()

建議的方法是使用 shell_exec() 呼叫 mysql 工具來執行 *.sql 腳本。以下是範例:

$command = 'mysql'
        . ' --host=' . $vals['db_host']
        . ' --user=' . $vals['db_user']
        . ' --password=' . $vals['db_pass']
        . ' --database=' . $vals['db_name']
        . ' --execute="SOURCE ' . $script_path
;

此指令使用必要的參數建立一個 MySQL 執行指令,以執行 $script_path 中指定的 *.sql 檔案。

shell_exec() 之間的差異和 exec()

雖然這兩個函數都執行外部命令,但它們有一些區別。 shell_exec() 捕獲命令的輸出並將其作為字串傳回,而 exec() 則傳回命令執行的狀態。在這種情況下,首選 shell_exec() 來取得 MySQL 指令的輸出。

其他注意事項

執行*.sql 檔案時,請確保命令包含所有內容必要的參數(db_host、db_user、db_pass、db_name)並且您有足夠的權限來執行該腳本。此外,使用 --execute="SOURCE ..." 選項而不是

以上是如何使用 shell_exec() 從 PHP 執行 MySQL *.sql 檔案?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn