1p面板更换回宝塔出现的问题

1p面板更换回宝塔出现的问题

1p面板更换回宝塔出现的问题

1P面板部署网站换回宝塔后常见问题及解决办法

不知道大家有没有遇到过这样的情况:先用1P面板部署了一个网站,之后换回宝塔面板时,突然出现了一些问题。下面为大家详细介绍这些问题及解决办法。

一、phpMyAdmin不兼容PHP版本问题

问题描述

出现报错提示为phpMyAdmin 不兼容你的PHP版本。

Fatal error: Uncaught mysqli_sql_exception: SELECT command denied to user 'yourdbuser'@'localhost' for table 'user' in /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Dbi/DbiMysqli.php:199
Stack trace:
#0 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Dbi/DbiMysqli.php(199): mysqli->query()
#1 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/DatabaseInterface.php(316): PhpMyAdmin\Dbi\DbiMysqli->realQuery()
#2 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/DatabaseInterface.php(2387): PhpMyAdmin\DatabaseInterface->tryQuery()
#3 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/DatabaseInterface.php(2332): PhpMyAdmin\DatabaseInterface->isUserType()
#4 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Menu.php(562): PhpMyAdmin\DatabaseInterface->isSuperuser()
#5 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Menu.php(107): PhpMyAdmin\Menu->_getServerTabs()
#6 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Menu.php(70): PhpMyAdmin\Menu->_getMenu()
#7 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Header.php(445): PhpMyAdmin\Menu->getDisplay()
#8 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Response.php(323): PhpMyAdmin\Header->getDisplay()
#9 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Response.php(336): PhpMyAdmin\Response->_getDisplay()
#10 /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Response.php(495): PhpMyAdmin\Response->_htmlResponse()
#11 [internal function]: PhpMyAdmin\Response->response()
#12 {main}
thrown in /www/server/phpmyadmin/phpmyadmin_[hidden]/libraries/classes/Dbi/DbiMysqli.php on line 199

解决办法

在宝塔面板的版本切换处,将PHP版本切换回7.4版本。

mp8athys.png

二、数据库导入失败问题

问题描述

数据库导入失败,报错显示为“#1046 - No database selected”或者出现关于“utf8mb4_0900_ai_ci” 的报错。这是由于从1P面板的MySQL8.0高版本转换到宝塔的MySQL5.7版本导致的。

解决办法

最佳解决办法

备份好数据库,卸载5.7的版本,安装回8.0的版本,如果配置问题或者其他原因安装不了,那么可以参照下面

1. 导出数据做备份

使用 mysqldump 命令将 MySQL 8.0 数据库导出为 SQL 文件。具体命令如下:

mysqldump -u 用户名 -p --databases 数据库名 > data.sql

或者,使用导如UI也行

2. 修改 SQL 文件

因为 MySQL 8.0 和 5.7 的字符集和排序规则有所不同,所以需要对导出的 SQL 文件进行修改。主要涉及以下替换操作:

使用文本管理工具,操作:

  • utf8mb4_0900_ai_ci 替换为 utf8_general_ci
  • CHARSET=utf8mb4 替换为 CHARSET=utf8

或者使用命令:

我们既可以使用文本编辑器手动完成替换,也可以借助命令行工具 sed 来快速实现。使用 sed 命令如下:

sed -i's/utf8mb4_0900_ai_ci/utf8_general_ci/g' data.sql
sed -i's/CHARSET=utf8mb4/CHARSET=utf8/g' data.sql

3. 重新导入

使用UI或者命令进行导入

mysql -u 用户名 -p 新数据库名 < data.sql

小贴士:在进行面板切换操作前,建议备份好网站数据及数据库,避免因版本差异或操作问题造成数据丢失。同时,关注不同面板及相关组件版本兼容性,有助于减少此类问题发生。

©版权声明
THE END
喜欢就支持一下吧
点赞0 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容