2016-10-09 33 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

相关问题