我在 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/