数据库存在但返回错误提示“未知数据库”

Cha*_*ina 5 php mysql mysqli wampserver wamp64

几个小时前,我将WAMP 服务器安装到我的Windows 10 64 位计算机中。我使用phymyadmin创建了一个名为“ testdb ”的数据库,并尝试使用 php 文件连接到它。我确定我创建了数据库,但它返回此错误:

"Warning: mysqli_connect(): (HY000/1049): Unknown database 'testdb' in C:\wamp64\www\projects\index.php on line 7"
Run Code Online (Sandbox Code Playgroud)

这是php文件。

<?php
define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'testdb');

$link = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME);
?>
Run Code Online (Sandbox Code Playgroud)

我的问题与以下问题类似(但不完全相同):

数据库已创建但返回错误为未知数据库

(但是在那种情况下,数据库不是由原始海报创建的。在这种情况下,我很确定我已经创建了数据库。)

附加信息

  1. 所有 wamp 服务都在运行。
  2. “root”用户有权访问数据库。(证明)
  3. MySQL 控制台确认数据库的存在。(证明)
  4. Wamp 服务器版本 3.2.2.2

Joh*_*nde 9

在较新版本的 Wampserver 中,MySQL 的端口已从 更改3306为3308(您可以在第一个屏幕截图中看到)。您将需要更新您的连接以指定该端口。否则,你会被击中WAMP这不安装MariaDB的不具有在它内部的数据库。

define('DB_SERVER', 'localhost');
define('DB_USERNAME', 'root');
define('DB_PASSWORD', '');
define('DB_NAME', 'testdb');
define('DB_PORT', 3308);

$link = mysqli_connect(DB_SERVER, DB_USERNAME, DB_PASSWORD, DB_NAME, DB_PORT);
Run Code Online (Sandbox Code Playgroud)

正如评论中所指出的,也可以将 MySQL 设为您的默认数据库,这也可以解决您的问题。您可以从DBA Stack Exchange 站点获取说明。