! h5 b3 M+ n/ A# l, P2 d& S6 S $ Z) m( m# q. o, b" H9 u- v[Warning] [MY-013242] [Server] --character-set-server: 'utf8' is currently an alias for the character set UTF8MB3, but will be an alias for UTF8MB4 in a future release. Please consider using UTF8MB4 in order to be unambiguous. ! t$ B: }: t, L- T4 K) Q" J說明: 千萬不能照它建議用"UTF8MB4",否則無法成功啟動/ ~$ R; ~' ~/ n( m* E) z0 N
6 B8 b0 c: K5 J3 V/ i(2)1 M! ]# }5 E& `0 f3 Q! m
(1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'system>0' at line 1 " `6 c# Q/ G3 }0 m. x; JSELECT COUNT(*) FROM common_usergroup WHERE type='special' and system>0: L: S) }( ?$ y, R) ?/ |
% @5 W5 l/ \& m* w6 G& p& Y) a
(1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'groups = '' AND starttime<=1532077291 AND (endtime>=1532077291 OR endtime=0) ORD' at line 1- S m8 y& Z% b" l
SELECT * FROM forum_announcement WHERE type!=2 AND groups = '' AND starttime<=1532077291 AND (endtime>=1532077291 OR endtime=0) ORDER BY displayorder, starttime DESC, id DESC LIMIT 1 6 z; @ Q: @& F: V8 W1 d+ w, C' `+ G: `* @8 a6 k0 i5 e$ l
因為MySQL 8.0+將system和groups作為了關鍵字,所以不能直接在SQL中將system和groups這兩個詞作為數據庫、數據表、數據表字段中的任意一種使用,如果數據庫名或數據表名或數據表字段名使用了system或groups作為名字,必須使用一對反引號引用起來。寫作`system`或`groups`。% d% j) ]3 {, S4 }) f' B
/ y" @% o) b; E/ S8 R' [. P
第一個錯誤需要找到Discuz!目錄中的source\class\table\table_common_usergroup.php,& s+ f* C e3 i3 q/ S
將文件中所有的system全部改成`system`,保存後重新上傳到服務器的相同目錄即可。9 |3 |/ n; k/ T1 \6 u7 _) g7 n0 T3 m
) r% U* u9 [. ?- k2 U
第二個錯誤需要找到Discuz!目錄下中的source\class\table\table_forum_announcement.php,; e4 `+ T b; X* Z* ~
將文件中所有的groups全部改為`groups`,保存後重新上傳到服務器的相同目錄即可。9 @' \; o2 E& v* e* d
7 |& m6 P( I. Z2 Y; Z7 b5 T: c
如果在MySQL 8+環境下安裝Discuz!,在安裝前需要給install\data\install.sql文件中沒有加引號的所有system逐一添加一對反引號保存重新上傳到服務器的相同目錄,否則也會出現SQL語法錯誤。9 P# M7 C z8 p6 z/ D. R0 G9 X
d; A& H# X. Q4 }
為了避免語法錯誤,在寫SQL語句時,一定要為所有的數據庫名、數據表名、數據表字段名全部添加一對反引號,像Discuz!這樣的寫法是很不妥的。3 U% @% A1 R4 t9 C; ?: }3 o) g& n
以上參考: 升級到 MySQL 8.0+ 後Discuz! 更新緩存時出現SQL語法錯誤 % _: k, h; R H6 Z6 ^0 a* R9 |, \- ^) W
$ m/ f# e( T5 O4 L* u