继上次发现那个愚蠢的错误之后,开始对mysql 进行清理。
查了一下相关文档(忘了链接了),mysql有两种安装方式,dmg 和 homebrew, 我的Mac中两个都装了,先把dmg那个卸载了,但是brew安装好像没有解决,两个都安装的情况下相互不会更新。两个都删除了,还是采用dmg 安装。

pdo 连接数据库的配置,以及错误:

class Dbh {
    private host = "localhost";
    privateuser = "root";
    private pwd = "xxxx";
    privatedbName = "xxxxdb";


    protected function connect() {
        try {
            dsn = 'mysql:host=' .this->host . ';dbname=' .this->dbName;pdo = new PDO(dsn,this->user, this->pwd);pdo->setAttribute(PDO::ATTR_DEFAULT_FETCH_MODE, PDO::FETCH_ASSOC);

            
        } catch (PDOException e) {
            print "Error!: " .e->getMessage() . "
"; die(); } return $pdo; }

出现以下err msg:

SQLSTATE[HY000] [2002] No such file or directory

安装后要在php.ini改一下配置,关于php.ini的文件位置,用以下方式找:


从里面找到php.ini 的位置

php.ini 中加入以下配置:

mysql.default_socket=/tmp/mysql.sock
pdo_mysql.default_socket=/tmp/mysql.sock

这里采用默认的mysql.sock 路径,需要自己事先确认一下上面的文件,必须是www 的user具有绝对的access 权限。

修改后重启一下apache, 如果你使用mac 自带的apache, 其位置在/usr/sbin/apachectl

sudo apachectl restart 

文章来源于互联网:PDO 连接 mysql的配置

发表评论