XAMPP环境访问DVWA报Fatal mySQL error错误求助
DVWA报错Unknown database 'dvwa'排查解决方法
核心问题定位
当前报错由两个基础配置错误直接导致:
- 配置文件命名错误:重命名为
config.nic.php不符合DVWA的配置加载规则,程序无法正确读取配置参数 - 未走初始化流程:直接访问登录页时程序尝试切换到
dvwa数据库,但该数据库不存在,且访问入口错误无法触发自动安装逻辑
分步解决操作
- 修正配置文件
找到DVWA部署目录下的config文件夹,删除之前命名错误的config.nic.php,将目录内自带的config.inc.php.dist模板文件重命名为config.inc.php。
打开重命名后的配置文件核对数据库配置项,注意XAMPP默认自带MySQL的初始账号为root、密码为空,如果你没有手动创建过名为dvwa的数据库用户,需要将db_user的值改为root,参考正确配置如下:
$_DVWA[ 'db_server' ] = '127.0.0.1'; $_DVWA[ 'db_database' ] = 'dvwa'; $_DVWA[ 'db_user' ] = 'root'; $_DVWA[ 'db_password' ] = ''; $_DVWA[ 'db_port'] = '3306';
- (可选)手动预创建数据库
打开XAMPP控制面板,点击MySQL行对应的Admin按钮进入数据库管理页,选择左侧菜单栏的「新建」,数据库名称填写dvwa,排序规则选择utf8_general_ci,点击确认完成创建。 - 走官方安装流程初始化
不要直接访问login.php,在浏览器地址栏输入http://127.0.0.1/setup.php(如果你是把整个DVWA文件夹放在htdocs目录下,地址为http://127.0.0.1/dvwa/setup.php)进入安装页,将页面拉到最底部点击Create / Reset Database按钮,等待程序自动完成库表创建、默认账号初始化操作,完成后会自动跳转到登录页面。 - 登录验证
初始化完成后使用默认账号即可登录:用户名admin,密码password。
额外排查项
如果操作完仍有报错,逐一核对以下配置:
- 确认XAMPP面板里Apache、MySQL服务状态均为运行中,没有端口被其他程序占用
- 打开MySQL的配置文件
my.ini,确认服务实际监听端口为3306,和配置文件里填写的db_port值一致 - 如果你之前手动修改过MySQL的root账号密码,将配置文件里
db_password的值改为你实际设置的密码,不要留空
内容的提问来源于stack exchange,提问作者DarshD555
相关产品推荐
相关产品推荐

