返回列表 发帖
查看: 608|回复: 9

[求助] 数据库从5.5升到5.7后,网站打不开了,错误码1046,求大神指点一二

4

主题

73

回帖

3

粉丝

渐入佳境

贡献
0 点
金币
6 个
产品版本
X5.0+
QQ
发表于 2026-5-24 16:07:52 |广西| 查看全部 |阅读模式
我的宝塔里放了几个站点,其中一个是微信小程序,需要用到数据库5.7的版本,于是果断从5.5版本升到5.7版本,升级后小程序可以正常使用了,可是我的论坛(用Discuz搭建的)却提示1046错误,求各位大神指点指点,我不知道在哪里修改了。
我知道答案 回答被采纳将会获得1 贡献 已有9人回答
回复

使用道具 举报

7

主题

73

回帖

3

粉丝

渐入佳境

贡献
0 点
金币
52 个
产品版本
X3.5
发表于 2026-5-24 16:20:31 |安徽| 查看全部
你看到的 (1046) No database selected 是 MySQL 5.7 升级后常见的 Discuz! 数据库连接问题,核心原因是:
数据库配置文件异常:config/config_global.php 或 config/config_ucenter.php 中的数据库名、账号、密码配置丢失或错误,导致程序未指定要操作的数据库。
数据库连接字符集 / 权限问题:MySQL 5.7 对权限和字符集校验更严格,旧版配置可能不兼容,导致连接后未成功 USE database。
缓存 / 模板残留:Discuz! 系统缓存或模板文件中残留了旧版数据库连接信息。
✅ 分步解决办法
1. 检查数据库配置文件
打开网站根目录下的 config/config_global.php,确认以下配置项正确:
php
运行
$_config['db']['1']['dbhost'] = 'localhost'; // 数据库地址
$_config['db']['1']['dbuser'] = '你的数据库账号'; // 数据库用户名
$_config['db']['1']['dbpw'] = '你的数据库密码'; // 数据库密码
$_config['db']['1']['dbname'] = '你的数据库名'; // 必须填写,不能空
$_config['db']['1']['dbcharset'] = 'utf8'; // 或 utf8mb4,与数据库一致
同时检查 config/config_ucenter.php 中的数据库配置,确保和上面完全一致。

AI
回复

使用道具 举报

4

主题

73

回帖

3

粉丝

渐入佳境

贡献
0 点
金币
6 个
产品版本
X5.0+
QQ
 楼主| 发表于 2026-5-24 17:25:20 |广西| 查看全部
东至人网 发表于 2026-5-24 16:20
你看到的 (1046) No database selected 是 MySQL 5.7 升级后常见的 Discuz! 数据库连接问题,核心原因是:
...

核对过了,还是解决不了这个问题,兄弟能再解答详细一点吗?
回复

使用道具 举报

50

主题

3416

回帖

11

粉丝

应用开发者

Discuz! 运维

贡献
232 点
金币
686 个
QQ
发表于 2026-5-25 09:20:07 |江苏| 查看全部
沙发说的是正解。。。
回复 1

使用道具 举报

4

主题

73

回帖

3

粉丝

渐入佳境

贡献
0 点
金币
6 个
产品版本
X5.0+
QQ
 楼主| 发表于 2026-5-25 10:45:03 |广西| 查看全部
东至人网 发表于 2026-5-24 16:20
你看到的 (1046) No database selected 是 MySQL 5.7 升级后常见的 Discuz! 数据库连接问题,核心原因是:
...

想问下20块钱能帮我解决一下吗?我是纯小白,玩论坛没挣钱,就是记录一下日记
回复

使用道具 举报

7

主题

73

回帖

3

粉丝

渐入佳境

贡献
0 点
金币
52 个
产品版本
X3.5
发表于 2026-5-25 17:31:46 |安徽| 查看全部
小不点 发表于 2026-5-25 10:45
想问下20块钱能帮我解决一下吗?我是纯小白,玩论坛没挣钱,就是记录一下日记 ...

宝塔里面查看你的数据库名称、密码,discuz配置文件里面要对应上。
回复

使用道具 举报

19

主题

2271

回帖

4

粉丝

应用开发者

贡献
81 点
金币
629 个
QQ
发表于 2026-5-25 19:49:46 |福建| 查看全部
数据表掉了,备份后补下:
  1. DROP TABLE IF EXISTS pre_common_syscache;
  2. CREATE TABLE pre_common_syscache (
  3.   cname varchar(32) NOT NULL,
  4.   ctype tinyint(3) unsigned NOT NULL,
  5.   dateline int(10) unsigned NOT NULL,
  6.   `data` mediumblob NOT NULL,
  7.   PRIMARY KEY (cname)
  8. )
复制代码
回复 1

使用道具 举报

4

主题

73

回帖

3

粉丝

渐入佳境

贡献
0 点
金币
6 个
产品版本
X5.0+
QQ
 楼主| 发表于 2026-5-26 21:43:50 |广西| 查看全部
东至人网 发表于 2026-5-25 17:31
宝塔里面查看你的数据库名称、密码,discuz配置文件里面要对应上。

对应上了还是不行,你能加个Q帮操作一下不?
回复

使用道具 举报

4

主题

73

回帖

3

粉丝

渐入佳境

贡献
0 点
金币
6 个
产品版本
X5.0+
QQ
 楼主| 发表于 2026-5-26 21:44:21 |广西| 查看全部
crx349 发表于 2026-5-25 19:49
数据表掉了,备份后补下:

这个代码是加在哪个文件里?文件的哪个位置加入呢?新手小白,勿怪
回复

使用道具 举报

19

主题

2271

回帖

4

粉丝

应用开发者

贡献
81 点
金币
629 个
QQ
发表于 2026-5-27 01:06:46 |福建| 查看全部
小不点 发表于 2026-5-26 21:44
这个代码是加在哪个文件里?文件的哪个位置加入呢?新手小白,勿怪

用数据库管理工具 执行哦 ,例如phpmyadmin,现在大部分的面版都自带这个
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

  • 关注公众号
  • 有偿服务微信
  • 有偿服务QQ

手机版|小黑屋|Discuz! 官方交流社区 ( 皖ICP备16010102号 |皖公网安备34010302002376号 )|网站地图|star

GMT+8, 2026-6-7 03:26 , Processed in 0.036612 second(s), 10 queries , Redis On.

Powered by Discuz! X5.0 Licensed

© 2001-2026 Discuz! Team.

关灯 在本版发帖
有偿服务QQ
有偿服务微信
返回顶部
快速回复 返回顶部 返回列表