php - 让 pdo_mysql 驱动程序在 CLI 中工作

标签 php mysql pdo command-line-interface

我在 CLI 中遇到 pdo_mysql 扩展的问题。我正在使用本地 LAMPP 安装并制作一个 info.php 文件,我可以看到我启用了 PDO 和 mysql 驱动程序。但是当我在命令行中编写 php --ri mysql 时,它返回 Extension 'mysql' not present。 我已经阅读了 php.ini,一个是用于 CLI 的,另一个是为浏览器加载的,我看不出 pdo 配置有什么不同。 PDO 已为 CLI 激活,但 pdo_mysql 未激活,我找不到任何 pdo_mysql.so 文件或任何其他文件或行来告诉我为什么它在浏览器中工作而不是在 cli 中工作。有帮助吗?

非常感谢。

最佳答案

我正在通过 apt sudo apt-get install php5-cli 使用 ubuntu+mysql(单独安装 non-lamp)和 php cli。默认情况下安装 PDO,但未安装适当的数据库驱动程序(在我的例子中是 mysql)。这可以从命令行 php --ri pdo 验证,这会导致 PDO support=>enabled 和 PDO drivers=>(blank)

要为 mysql 纠正此问题,请通过 sudo apt-get install php5-mysql 安装 php5-mysql 模块。显然,在安装 php5-cli 之后执行此操作。如果您正在使用另一个数据库(例如 postgres 或 odbc),请通过 sudo apt-cache search php5

查找合适的模块名称

关于php - 让 pdo_mysql 驱动程序在 CLI 中工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6001316/

相关文章:

php - Mongodb php获取新文档的ID?

php - 如何从 PHP 脚本运行 grunt?

php - PDO MySQL SELECT 在 IF 语句中具有多个条件

php - 填充第三个表以保持效率

php - 使用 PHP 和 SQLite

php - 加载测试 UI

MySQL 将列转换为行

php - 检查单个 mysql 表行并仅对它们应用一个函数

php - 从数组获取 ID 并 POST 到 JOIN 表

PHP PDO SSL MySQL 连接失败