我刚开始学习PHP和Mysql,当我运行php文件时遇到问题。
错误:找不到驱动程序
这是我正在使用的版本:
我试着回答类似但仍无法解决问题的问题的答案。
答案 0 :(得分:0)
您的代码中似乎有一个简单的印刷错误。您使用字符串msql:dbhost=localhost...
定义了DSN
但是你应该使用mysql:dbhost=localhost...
有关MySQL DSN格式的参考文档,请参阅http://php.net/manual/en/ref.pdo-mysql.connection.php。
您已安装php-pdo
,但您可能还需要php-mysql
或php-mysqlnd
(更喜欢后者)。
您可以通过运行php -i | less
进行检查,以提供当前安装的所有扩展程序的冗长报告。查找“PDO”部分,并确认mysql驱动程序是安装的驱动程序之一:
PDO
PDO support => enabled
PDO drivers => sqlite, mysql, sqlite2
如果是,则应该跟随“pdo_mysql”部分。我看起来像这样:
pdo_mysql
PDO Driver for MySQL => enabled
Client API version => mysqlnd 5.0.8-dev - 20102224 - $Id: 731e5b87ba42146a687c29995d2dfd8b4e40b325 $
Directive => Local Value => Master Value
pdo_mysql.default_socket => /var/run/mysqld/mysqld.sock
如果您没有pdo_mysql
部分,则应为其安装相应的yum包:
sudo yum install php-mysqlnd