2016-10-09 61 views
0

我正在研究一個WordPress插件,我試圖獲取有關安裝的數據庫類型的一些基本信息。如何在PHP中獲取基本的數據庫信息

我需要的信息如下:

  • 數據庫軟件:它可以是MySQL和MariaDB的,Oracle或其他任何
  • 數據庫版本:我知道如何得到它

現在我知道我可以通過運行以下查詢輕鬆獲取數據庫版本:

$wpdb->get_var("SELECT VERSION() AS version"); 

但我不知道如何獲取數據庫軟件名稱。

有沒有人知道任何方式來獲取這些細節?

回答

2

看到INFORMATION_SCHEMA分貝表用useshow tables和閒逛。

SELECT variable_value 
FROM INFORMATION_SCHEMA.SESSION_VARIABLES 
WHERE variable_name IN ('version_comment','version_compile_os','version_compile_machine','version','innodb_version'); 
+------------------------------+ 
| variable_value    | 
+------------------------------+ 
| 5.6.31      | 
| Win64      | 
| x86_64      | 
| MySQL Community Server (GPL) | 
| 5.6.31-log     | 
+------------------------------+ 

MySQL手冊頁標題爲Chapter 22 INFORMATION_SCHEMA Tables

+0

但是我應該怎麼知道用戶是使用默認MySQL還是使用MariaDB MySQL或Oracle或其他? – iSaumya

+0

字符串將確認。他們喜歡在他們的絃樂中誇耀,不是嗎? – Drew

+0

你在說什麼字符串? '版本'會說MySQL的正常MySQL和MariaDB – iSaumya

2

在PHP中,如果你使用,你可以使用可以使用PDO::getAttribute()PDO::ATTR_DRIVER_NAME PDO驅動程序:

假設$ conn是你的連接,你可以retrive相關數據庫驅動程序

$dbDriverName = $conn->getAttribute(PDO::ATTR_DRIVER_NAME); 

你可以檢查,如果你已在瓦爾

$DB_HOST, 
$DB_USER, 
$DB_PASSWORD 
$DB_NAME 

,那麼你可以嘗試一種新的連接

$conn = mysql_connect($DB_HOST, $DB_USER, $DB_PASSWORD, $DB_NAME); 

,或者你可以導入的wp-config.php文件的獲取數據庫連接PARAM看到這一個建議https://wordpress.stackexchange.com/questions/162614/how-to-make-connection-to-wordpress-data-base-in-a-plugin

+0

謝謝。對於普通的PHP腳本來說這非常棒,在WordPress中,所有數據庫調用都由'$ wpdb'處理。那麼,我應該如何在WordPress中處理它? – iSaumya

+0

如果$ wpdb是連接嘗試.. $ wpdb-> getAttribute(PDO :: ATTR_DRIVER_NAME);否則顯示代碼在哪裏建立連接 – scaisEdge

+0

WordPress通過'wp-config.php'處理數據庫連接,你可以在這裏看到更多細節:https://codex.wordpress.org/Editing_wp-config.php – iSaumya

相關問題