除了我的日常工作,我刚刚开始使用php-mysql,几天来我一直在拼命解决Apache,PHP和MySQL之间的连接问题。
首先,我卸载了Linux发行版附带的所有PHP和mysql,然后在我的rhel6机器上安装了mysql5.6.22和php5.6.4,并配置了php。
从源代码使用下面的命令。
./configure --with-apxs2=/usr/sbin/apxs --with-mysql在这之后,我写了一些代码来检查mysql和php之间的连接。它是这样的:
<?php
$host_name = "localhost";
$database = "rating"; // Change your database name
$username = "rate"; // Your database user id
$password = "rate"; // Your password
//////// Do not Edit below /////////
try {
$dbo = new PDO('mysql:host='.$host_name.';dbname='.$database, $username, $password);
$conn->setAttribute(PDO::ATTR_ERRMODE, PDO::ERRMODE_EXCEPTION);
echo "Connected successfully";
}
catch
(PDOException $e) {
print "Error!: " . $e->getMessage() . "<br/>";
echo "Connection failed: " . $e->getMessage();
die();
}
?>这抛出了一个错误驱动程序没有找到。在谷歌之后,我开始了解到可能会丢失PDO驱动程序,并必须安装它。请帮我解决这个问题。
如何让我的php-mysql连接工作。请帮帮忙。上面的配置命令是否不正确。请指导我以及在php.ini中需要做哪些更改
文件。
发布于 2015-01-16 17:33:16
使用下面的线条。
$dbo = new PDO('mysql:host='.$host_name.';dbname='.$database.'', $username, $password);发布于 2015-01-16 17:33:50
您需要为您的数据库引擎(MySQL)安装PDO驱动程序。如果你使用的是一个类似debian的发行版,你可以这样做:
# apt-get install php5-mysql
在类redhat上:
# yum install php-mysql
然后你需要在你的php.ini中激活它:
extension=pdo.so
extension=mysql.so
extension=pdo_mysql.so然后重新启动apache。
发布于 2015-01-16 18:31:40
检查您的php.ini文件并搜索extension=php_pdo_mysql.dll,如果它在注释中,请取消注释此行
extension=php_pdo_mysql.dllhttps://stackoverflow.com/questions/27980669
复制相似问题