久久久久av_欧美日韩一区二区在线_国产精品三区四区_日韩中字在线

Discuz! 官方交流社區

標題: 升級UCenter 1.7,提示錯誤1031 [打印本頁]

作者: jjii33    時間: 2023-4-28 22:15
標題: 升級UCenter 1.7,提示錯誤1031
環境:mysql 5.7.26   PHP 7.3.4 NTS  ng 1.16


UCenter info: MySQL Query Error
SQL:ALTER TABLE [Table]admins ENGINE=InnoDB;
Error:Table storage engine for '#sql-34c_41' doesn't have this option
Errno:1031



(, 下載次數: 36)



作者: xiaoxi    時間: 2023-4-29 14:19
升級出現,500 - 內部服務器錯誤。怎么回事?
作者: jjii33    時間: 2023-4-29 16:35
@湖中沉
作者: jjii33    時間: 2023-4-29 16:37
@Discuz有償服務
作者: 湖中沉    時間: 2023-4-29 16:50
1031 數據庫表不存在、表存儲引擎沒有此選項

所以自己進數據表里面先將表恢復為正常DZ安裝后的狀態。
你這估計是用其他數據庫管理軟件恢復備份之類的操作過導致數據表格式異常

作者: jjii33    時間: 2023-4-29 21:06
湖中沉 發表于 2023-4-29 16:50
1031 數據庫表不存在、表存儲引擎沒有此選項

所以自己進數據表里面先將表恢復為正常DZ安裝后的狀態。

我用Navicat Premium 16備份恢復的,好的,謝謝老師提醒
作者: mayizhongguo    時間: 2023-5-20 15:53
解決了嗎,怎么解決的,我升級 UCenter 1.7 也遇到同樣的問題,因為原網站數據庫特別大,也不知道怎么處理合適
作者: mayizhongguo    時間: 2023-5-20 15:56
UCenter info: MySQL Query Error
SQL:ALTER TABLE [Table]admins ENGINE=InnoDB;
Error:Table storage engine for '#sql-edf7_56c8' doesn't have this option
Errno:1031
作者: 專家    時間: 2023-5-20 17:42
mayizhongguo 發表于 2023-5-20 15:56
UCenter info: MySQL Query Error
SQL:ALTER TABLE [Table]admins ENGINE=InnoDB;
Error:Table storage eng ...

數據庫版本多少,是不是不支持InnoDB
作者: jjii33    時間: 2023-5-20 22:12
專家 發表于 2023-5-20 17:42
數據庫版本多少,是不是不支持InnoDB

已經搞定了,謝謝!
作者: 城東書院    時間: 2023-5-21 10:59
jjii33 發表于 2023-5-20 22:12
已經搞定了,謝謝!

把你解決問題的步驟分享一下吧
作者: myawei    時間: 2023-5-21 18:27
jjii33 發表于 2023-5-20 22:12
已經搞定了,謝謝!

同問老兄,相同的問題遇到了,也是用navicat備份恢復的,求教方法!謝謝!
作者: jjii33    時間: 2023-5-22 00:37
myawei 發表于 2023-5-21 18:27
同問老兄,相同的問題遇到了,也是用navicat備份恢復的,求教方法!謝謝! ...

環境版本問題,還有要備份,不要用運存,
作者: mayizhongguo    時間: 2023-5-22 08:00
專家 發表于 2023-5-20 17:42
數據庫版本多少,是不是不支持InnoDB

您好,數據庫版本是5.7 支持innoDB
作者: 湖中沉    時間: 2023-5-22 08:11
mayizhongguo 發表于 2023-5-22 08:00
您好,數據庫版本是5.7 支持innoDB

是否用navicat操作過數據庫?
作者: mayizhongguo    時間: 2023-5-22 10:07
湖中沉 發表于 2023-5-22 08:11
是否用navicat操作過數據庫?

是的,數據庫比較大,都是用Navicat 導入的
作者: myawei    時間: 2023-5-22 10:34
看問題是出在軟件上,但Navicat 備份導入是個很正常的操作,站長很多都是在用這個,軟件本身應該沒問題,不知道是不是哪個設置的問題,有沒有了解的專家?
作者: 湖中沉    時間: 2023-5-22 11:02
mayizhongguo 發表于 2023-5-22 10:07
是的,數據庫比較大,都是用Navicat 導入的

Navicat的坑,已經多個用Navicat導致出問題的了,他改變了表結構里面的信息,導致結構和原來的不一致
作者: jjii33    時間: 2023-5-22 13:16
myawei 發表于 2023-5-22 10:34
看問題是出在軟件上,但Navicat 備份導入是個很正常的操作,站長很多都是在用這個,軟件本身應該沒問題,不 ...

備份用什么方法的!
升級的話,環境太高就像我這個問題一樣,用最低版本就就能成功,不過升級后,UC提示成功,中途也沒有卡頓,好多都轉不過來,要手動去改,不知道你的有沒有這種問題!
作者: myawei    時間: 2023-5-22 13:27
湖中沉 發表于 2023-5-22 11:02
Navicat的坑,已經多個用Navicat導致出問題的了,他改變了表結構里面的信息,導致結構和原來的不一致 ...

所以我在考慮,Navicat會改變表結構的信息,是不是我們自己導出或者導入的時候有哪里設置不對,按說一個老軟件,不應該出這種錯誤。版主能不能考察下是不是我們設置的問題,畢竟這個軟件太好用了。
作者: myawei    時間: 2023-5-22 13:38
jjii33 發表于 2023-5-22 13:16
備份用什么方法的!
升級的話,環境太高就像我這個問題一樣,用最低版本就就能成功,不過升級后,UC提示成功, ...

我是直接在navicat的對應數據庫上點擊右鍵“轉儲sql”文件,選上“結構和數據”,就直接保存為sql文件了,然后用這個再導入。不知道是不是這個操作太簡單粗暴導致錯誤了。
我看還有另外一個操作,在數據庫的表上點擊右鍵有個“導出向導”,這個就有很多選項,包括sql文件,高級里面可以選936gbk,我感覺默認的直接轉出就是utf,不知道是不是這個原因。
老兄你用的哪個存儲方法,大家都可以交流下,再加上有高手指點,肯定能發現問題出在哪里,以后就好辦了。
我現在是發現哪里報錯,就改哪個數據表,流程是走完了,但前后臺都有亂碼。
作者: 專家    時間: 2023-5-22 16:01
myawei 發表于 2023-5-22 10:34
看問題是出在軟件上,但Navicat 備份導入是個很正常的操作,站長很多都是在用這個,軟件本身應該沒問題,不 ...

但按以往的記錄,事實就是,用navicat的會出現問題(而且很多),用phpmyadmin的就不會。
個人猜測可能是phpmyadmin本身也是php寫的,底層是一樣的,跟Discuz一致性更好。
作者: 專家    時間: 2023-5-22 16:04
myawei 發表于 2023-5-22 13:38
我是直接在navicat的對應數據庫上點擊右鍵“轉儲sql”文件,選上“結構和數據”,就直接保存為sql文件了 ...

要不你把出問題的表導出一份結構(只要結構不要數據)為sql發出來看看
如果你有phpmyadmin,可以嘗試安裝一個全新的Discuz,然后將對應的表分別用navicat和phpmyadmin導出一份sql,看看區別在哪。
作者: 專家    時間: 2023-5-22 16:13
myawei 發表于 2023-5-22 13:38
我是直接在navicat的對應數據庫上點擊右鍵“轉儲sql”文件,選上“結構和數據”,就直接保存為sql文件了 ...

順帶一提,Navicat也許有更強的功能,但是無論是實際的開發測試,還是在論壇里給大家推薦,都不可能是它,因為它是商業收費軟件……
實際操作當中肯定還是得以phpmyadmin或者adminer這類開源免費軟件為準的,因為誰都能用。
作者: 湖中沉    時間: 2023-5-22 16:21
專家 發表于 2023-5-22 16:13
順帶一提,Navicat也許有更強的功能,但是無論是實際的開發測試,還是在論壇里給大家推薦,都不可能是它 ...

我個人用的heidiSQL
作者: 專家    時間: 2023-5-22 16:23
湖中沉 發表于 2023-5-22 16:21
我個人用的heidiSQL

嗯,這也是免費開源的
作者: myawei    時間: 2023-5-22 17:33
下面是全新安裝DZ3.5后分別用navicat和phpmyadmin備份的數據結構,麻煩給看下問題在哪里,謝謝。

(, 下載次數: 18)

(, 下載次數: 19)





作者: myawei    時間: 2023-5-22 17:36
湖中沉 發表于 2023-5-22 16:21
我個人用的heidiSQL

HeidiSQL這款好用嗎,備份恢復方便嗎?phpmyadmin恢復感覺好復雜的樣子,大了就有限制,速度貌似也比較慢,可能我接觸的少。
作者: myawei    時間: 2023-5-22 18:48
測試了一下HeidiSQL,還不太熟悉,導出的數據表結構如下。

(, 下載次數: 18)


作者: myawei    時間: 2023-5-22 19:45
上面這個表common_admincp_cmenu 因為是第一個,所以出問題也是第一個發現,看下面帖子,估計問題也是出在這里。

http://www.9999xn.com/thread-16942-1-1.html
http://www.9999xn.com/forum.php?mod=viewthread&tid=16758
作者: 湖中沉    時間: 2023-5-22 19:45
myawei 發表于 2023-5-22 18:48
測試了一下HeidiSQL,還不太熟悉,導出的數據表結構如下。

你對比下navicat導出,會發現有所不同
作者: jjii33    時間: 2023-5-22 23:26
這樣是看不出來的,要看錯誤提示
作者: myawei    時間: 2023-5-23 12:33
湖中沉 發表于 2023-5-22 19:45
你對比下navicat導出,會發現有所不同

謝謝老兄,認真對比后發現確實有所不同,主要在下面兩句,摘出來請指教是哪里的問題呢。

phpmyadmin備份的數據表:

  1. 1.  `username` char(15) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  2. 2.ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;
復制代碼

navicat備份的數據表:
  1. 1.  `username` char(15) CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '',
  2. 2. ENGINE = InnoDB AUTO_INCREMENT = 2 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_unicode_ci ROW_FORMAT = Dynamic;
復制代碼






作者: 湖中沉    時間: 2023-5-23 12:58
myawei 發表于 2023-5-23 12:33
謝謝老兄,認真對比后發現確實有所不同,主要在下面兩句,摘出來請指教是哪里的問題呢。

phpmyadmin備份 ...

關鍵就是ROW_FORMAT這個,是多余的,他會導致每個重新導入的數據表的ROW_FORMAT被強制設定而非默認值,這樣在其他程序操作的時候,就會出錯。
除了navicat,其他見過的數據庫操作軟件導出數據均不會帶這個ROW_FORMAT值
作者: 湖中沉    時間: 2023-5-23 13:01
myawei 發表于 2023-5-23 12:33
謝謝老兄,認真對比后發現確實有所不同,主要在下面兩句,摘出來請指教是哪里的問題呢。

phpmyadmin備份 ...

另外,一般正常導出,帶上CHARSET=xxx就可以了,navicat不知道出于什么考慮,導出的是CHARACTER SET = xxx
作者: myawei    時間: 2023-5-23 13:21
湖中沉 發表于 2023-5-23 12:58
關鍵就是ROW_FORMAT這個,是多余的,他會導致每個重新導入的數據表的ROW_FORMAT被強制設定而非默認值,這 ...

原來是這里的問題,我原來猜想的是phpmyadmin是DEFAULT CHARSET=utf8mb4,而navicat的是CHARACTER SET = utf8mb4,它沒有DEFAULT,原來是ROW_FORMAT = Dynamic,看數據表,確實Dynamic和InnoDB好像關聯緊密。又多了幾分了解,非常感謝!
作者: myawei    時間: 2023-5-23 13:53
湖中沉 發表于 2023-5-23 13:01
另外,一般正常導出,帶上CHARSET=xxx就可以了,navicat不知道出于什么考慮,導出的是CHARACTER SET = xx ...


也是很奇怪,翻看了下之前3.2版本用navicat備份的數據,里面也是有ROW_FORMAT,但是恢復很正常。莫非是MyISAM換成InnoDB,ROW_FORMAT這個就不能用了?

  1. ENGINE = MyISAM AUTO_INCREMENT = 1 CHARACTER SET = gbk COLLATE = gbk_chinese_ci ROW_FORMAT = Dynamic;
復制代碼
  1. ENGINE = MyISAM AUTO_INCREMENT = 2 CHARACTER SET = gbk COLLATE = gbk_chinese_ci ROW_FORMAT = Fixed;
復制代碼



作者: 湖中沉    時間: 2023-5-23 14:54
myawei 發表于 2023-5-23 13:53
也是很奇怪,翻看了下之前3.2版本用navicat備份的數據,里面也是有ROW_FORMAT,但是恢復很正常。莫非是M ...

變更數據庫引擎對ROW_FORMAT是有要求的,所以這問題只在3.5的升級上出現問題,其他版本升級或者備份恢復是無關的
作者: myawei    時間: 2023-5-23 16:28
湖中沉 發表于 2023-5-23 14:54
變更數據庫引擎對ROW_FORMAT是有要求的,所以這問題只在3.5的升級上出現問題,其他版本升級或者備份恢復 ...

明白啦,謝謝呀!!
作者: jjii33    時間: 2023-5-23 23:21
學習了,我的反復測試,沒有出現問題~
作者: myawei    時間: 2023-5-25 12:43
jjii33 發表于 2023-5-23 23:21
學習了,我的反復測試,沒有出現問題~

只要用navicat備份3.2恢復再升級,,八成會出這個問題。
作者: jjii33    時間: 2023-5-26 22:18
myawei 發表于 2023-5-25 12:43
只要用navicat備份3.2恢復再升級,,八成會出這個問題。

我的X3.5本地備份恢復正常,本地還原到服務也能運行!你應該是方法不對!
作者: myawei    時間: 2023-5-27 00:31
jjii33 發表于 2023-5-26 22:18
我的X3.5本地備份恢復正常,本地還原到服務也能運行!你應該是方法不對!

我用的是Navicat Premium 16,是備份的x3.2,然后本地恢復也是完全正常的,只是之后再升級3.5就出錯了。
我看湖中沉版主的解釋是:
這問題只在3.5的升級上出現問題,其他版本升級或者備份恢復是無關的
按這個說法,你是升級x3.5成功后再備份恢復,就沒有問題了。

作者: 小五哥    時間: 2023-12-30 23:32
湖中沉 發表于 2023-5-23 14:54
變更數據庫引擎對ROW_FORMAT是有要求的,所以這問題只在3.5的升級上出現問題,其他版本升級或者備份恢復 ...

但凡表設計出現ROW_FORMAT的刪除后,就可以重新繼續升級3.5了嗎?

作者: ligang1984    時間: 2025-8-1 17:33
myawei 發表于 2023-5-23 16:28
明白啦,謝謝呀?。?/blockquote>

我一臺服務器上運行 3.4,沒有問題,我現在想升級 3.5;

然后我重新找了臺服務器,安裝 3.4 ,把原服務器3.4 的數據通過 HeidiSQL 導出來,導入到新服務器 3.4 的數據庫里

升級還是提交 1031,麻煩問下,我這樣操作那樣還有問題嗎?
作者: ligang1984    時間: 2025-8-1 17:36
湖中沉 發表于 2023-4-29 16:50
1031 數據庫表不存在、表存儲引擎沒有此選項

所以自己進數據表里面先將表恢復為正常DZ安裝后的狀態。

我在服務器上安裝的 3.4,現在想升級到 3.5;

我重新找了臺服務器測試,安裝新的 3.4,然后把數據庫從原服務器上通過 Heidisql 導出,導入到新服務器的 3.4 數據庫里。

升級還是提示 1031,麻煩問下這是什么問題,我哪操作的不正確嗎?感謝
作者: ligang1984    時間: 2025-8-7 17:48
jjii33 發表于 2023-5-26 22:18
我的X3.5本地備份恢復正常,本地還原到服務也能運行!你應該是方法不對!

你好,請教個問題,Discuz我升級1.7提示
UCenter info: MySQL Query Error
SQL:ALTER TABLE [Table]admins ENGINE=InnoDB;
Error:Table storage engine for '#sql-20fc_13' doesn't have this option
Errno:1031

我看你升級成功了,請問這是什么問題;我使用了mysql轉儲sql、備份;heidisql導出數據,導入都不行
作者: 湖中沉    時間: 2025-8-7 17:57
ligang1984 發表于 2025-8-7 17:48
你好,請教個問題,Discuz我升級1.7提示
UCenter info: MySQL Query Error
SQL:ALTER TABLE [Table]admin ...

用navicat操作過不,navicat部分版本有問題,會導致表信息有問題,所以以前操作過的話,有可能就早就埋下了這個隱患,表信息一直是有問題的,只是對于使用不會暴露出來而已




歡迎光臨 Discuz! 官方交流社區 (http://www.9999xn.com/) Powered by Discuz! W1.0