用户
 找回密码
 入住 CI 中国社区
搜索
查看: 175|回复: 1
收起左侧

[数据库] 真是崩溃了数据库配置使用PDO驱动怎么都连不上。

[复制链接]
发表于 2018-7-5 15:31:32 | 显示全部楼层 |阅读模式
配置:
$db['default'] = array(
        // 'dsn' => '',
        'dsn'        => 'mysql:host=localhost;port=3306;dbname=community_db;',
        'hostname' => 'localhost',
        // 'hostname' => 'mysql:host=localhost;port=3306;',
        'username' => 'htc',
        'password' => 'Htchtc@06@0606',
        'database' => 'community_db',
        // 'dbdriver' => 'pdo',       
        'dbdriver' => 'mysqli',
        // 下面都是默认值就不贴了。
);


现在说问题:
'hostname' => 'mysql:host=localhost;port=3306;',
'dbdriver' => 'mysqli',
这样的配置是无法连接数据库的,提示 getaddrinfo failed: nodename nor servname provided, or not known
'dsn'        => 'mysql:host=localhost;port=3306;dbname=community_db;',
'hostname' => 'localhost',
'dbdriver' => 'pdo',       

这样的配置也是无法链接数据库的,提示 Access denied for user 'htc'@'localhost' to database 'community_db;charset=utf8mb4'
这种情况是很烦躁的,因为自己去试,实际是可以链接的,用户名密码权限都没问题。

能连上数据库的配置是:
'hostname' => 'mysql:host=localhost;port=3306;',
'dbdriver' => 'pdo',
或者
'hostname' => 'localhost',
'dbdriver' => 'mysqli',
只是这样哟。dsn的配置没鸟用。       



是我太菜鸟了么?



 楼主| 发表于 2018-7-5 15:34:25 | 显示全部楼层
使用PDO的时候,不要配置dsn,使用hostname就行。不要配置dsn,配置了就访问拒绝!

本版积分规则