本文实现功能解决在MySQL8.0安装discuz报错run_sql_error如果想直接看解决结果,直接去看解决问题目录
问题环境
VMware虚拟机
Centos7.3
PHP7.0
MySQL8.0
NGINX1.14
Discuz3.4
问题还原
本地环境为PHP5.6+MySQL5.6在安装discuz没有任何问题。
在虚拟机的centos上出现以下问题MySQL的表无法创建,安装报错
宿主机使用Xsheel和Ftp
由于在centos的终端截图不方便,下面的所有环境修改都会在xshell上进行操作,并且直接在宿主机上访问。
关于配置如何使用xsheel连接虚拟机
连接模式为NAT,并且已经安装了tools
使用xsheel连接,在虚拟机使用ifconfig查看ip地址
然后进行连接,需要输入账号密码,账号密码就是你的虚拟机账号密码
连接成功就是以下样子,可以输入PHP -v来查看PHP版本信息
还有一个就是ftp,由于需要传输点东西所以也使用了宿主机的ftp连接了虚拟机。同理也是输入ip地址并且端口为22
连接成功后就可以获取到虚拟机的文件
解决问题
这个问题的根源就是在MySQL的版本上。discuz支持的版本为PHP5.3.但是所有的数据库文件都是在MySQL5.5上创建的。所以就会造成字符集乱码的情况。
这个时候我们打开/etc/my.ini,这个是默认的一些配置,下面的那个mysqldump不用管,那个是咔咔在之前配置MySQL主从复制以有数据的情况配置的。
在这个文件里边加上以下代码
init_connect='SET NAMES utf8' default-storage-engine=INNODB character-set-server=utf8 collation-server=utf8_general_ci default_authentication_plugin=mysql_native_password登录后复制
在mysql8.0所有的存储引擎都是innodb,所以这里直接默认设置为innodb
字符集设置为utf8
default_authentication_plugin修改密码验证插件
经过以上配置完在来测试一下
测试
地址栏输入http://192.168.254.130/forum/install/index.php,然后一直下一步即可。在这里输入你的数据库账号密码
点击确认,就不会出现报错了
访问论坛就可以了
在查看数据库
查看表数一共是292张表
然后来到本地之前安装好的数据库里查看数量也是292
总结
以上就是discuz在MySQL8.0的安装错误的方案,虽然就几行配置,但是也不是一时半会就可以解决的。
以上就是Discuz如何解决安装时报错run_sql_error的详细内容,更多请关注慧达安全导航其它相关文章!
免责 声明
1、本网站名称:慧达安全导航
2、本站永久网址:https//www.huida178.com/
3、本站所有资源来源于网友投稿和高价购买,所有资源仅对编程人员及源代码爱好者开放下载做参考和研究及学习,本站不提供任何技术服务!
4、本站所有资源的属示图片和信息不代表本站的立场!本站只是储蓄平台及搬运
5、下载者禁止在服务器和虚拟机下进行搭建运营,本站所有资源不支持联网运行!只允许调试,参考和研究!!!!
6、未经原版权作者许可禁止用于任何商业环境,任何人不得擅作它用,下载者不得用于违反国家法律,否则发生的一切法律后果自行承担!
7、为尊重作者版权,请在下载24小时内删除!请购买原版授权作品,支持你喜欢的作者,谢谢!
8.若资源侵犯了您的合法权益,请持 您的版权证书和相关原作品信息来信通知我们!QQ:1247526623我们会及时删除,给您带来的不便,我们深表歉意!
9、如下载链接失效、广告或者压缩包问题请联系站长处理
10、如果你也有好源码或者教程,可以发布到网站,分享有金币奖励和额外收入!
11、本站资源售价只是赞助,收取费用仅维持本站的日常运营所需
12、因源码具有可复制性,一经赞助,不得以任何形式退款。
13、本文内容由网友自发贡献和站长收集,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系1247526623@qq.com
转载请注明出处: 慧达安全导航 » Discuz如何解决安装时报错run_sql_error
发表评论 取消回复