您好,登錄后才能下訂單哦!
Discuz如何解決安裝時報錯run_sql_error的問題?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
本文實現功能
解決在MySQL8.0安裝discuz報錯run_sql_error
如果想直接看解決結果,直接去看解決問題目錄
VMware虛擬機
Centos7.3
PHP7.0
MySQL8.0
NGINX1.14
Discuz3.4
本地環境為PHP5.6+MySQL5.6在安裝discuz沒有任何問題。
在虛擬機的centos上出現以下問題MySQL的表無法創建,安裝報錯
由于在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如何解決安裝時報錯run_sql_error的問題的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。