我刚刚安装了 Ubuntu 16.04(Xenial Xerus)并安装了网络服务器。一切都很好,但我不能访问数据库。 即使我创建新用户并授予所有权限,我也不能创建数据库
在 PHP 中我得到了这个错误:
SQLSTATE[HY000] [1698] Access denied for user 'root'@'localhost'
当我尝试在终端中登录时,它能工作,但在 PHP 和 phpMyAdmin 中不能。
PHP 代码:
protected $host = '127.0.0.1';
protected $db = 'dbname';
protected $name = 'root';
protected $pass = 'root';
protected $conn;
private static $settings = array(
PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'
);
public function __construct() {
try {
$this->conn = new PDO("mysql:host=$this->host;dbname=$this->db", $this->name, $this->pass, self::$settings);
} catch (PDOException $e) {
echo $e->getMessage();
}
}