欧美一区二区三区,国内熟女精品熟女A片视频小说,日本av网,小鲜肉男男GAY做受XXX网站

mysql遷移達(dá)夢(mèng)數(shù)據(jù)源報(bào)錯(cuò)

最近在進(jìn)行MySQL遷移達(dá)夢(mèng)數(shù)據(jù)源時(shí),遇到了一些報(bào)錯(cuò)。在這里分享一下其中一個(gè)報(bào)錯(cuò)以及解決方法。

在進(jìn)行數(shù)據(jù)導(dǎo)入時(shí),先將達(dá)夢(mèng)數(shù)據(jù)庫(kù)的數(shù)據(jù)導(dǎo)出成SQL文件,然后通過(guò)MySQL workbench導(dǎo)入到MySQL數(shù)據(jù)庫(kù)中。導(dǎo)入時(shí)出現(xiàn)了以下報(bào)錯(cuò):

Error Code: 1071. Specified key was too long; max key length is 767 bytes

這個(gè)報(bào)錯(cuò)通常是由于MySQL版本過(guò)低而導(dǎo)致的。在MySQL5.6及以下版本中,InnoDB存儲(chǔ)引擎下創(chuàng)建的索引最大長(zhǎng)度為767字節(jié)。如果索引的長(zhǎng)度超過(guò)了這個(gè)限制,就會(huì)出現(xiàn)上述報(bào)錯(cuò)。

解決這個(gè)問(wèn)題的方法是,在表創(chuàng)建時(shí)修改字符集為utf8mb4,它可以支持更多的字符,并且最大支持長(zhǎng)度為191個(gè)字符,可以解決索引長(zhǎng)度過(guò)長(zhǎng)的問(wèn)題。修改過(guò)程如下:

CREATE TABLE `table_name` (
`id` int(11) NOT NULL,
`title` varchar(191) COLLATE utf8mb4_unicode_ci DEFAULT NULL,
`content` varchar(191) COLLATE utf8mb4_unicode_ci NOT NULL,
PRIMARY KEY (`id`),
KEY `title_index` (`title`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci;

在上面代碼中可以看到,我們將表的字符集修改為了utf8mb4,并且將每個(gè)字段的字符集也修改為了utf8mb4。

總之,在使用MySQL遷移達(dá)夢(mèng)數(shù)據(jù)庫(kù)時(shí),需要留意字符集的設(shè)置問(wèn)題,以避免出現(xiàn)類似的報(bào)錯(cuò),避免出現(xiàn)不必要的麻煩。