é¶ãé®é¢çèæ¯
å¨åå¦SpringBoot + Angularæ¶ï¼æ°æ®åºè½¯ä»¶ä¾ç¶ä½¿ç¨çMySQLï¼ä¸åä¹å¤å¨äºï¼è¿æ¬¡çMySQLæå¡ä¸å使ç¨XAMPPæå»ºï¼è使ç¨äºæ´å æ¹ä¾¿çDockeræ¥æä¾æå¡ã
ä¸ãé®é¢å¤ç°
å¨é ç½®æ°æ®åºæ¶ï¼ç¨Dockeræå»ºå¥½ç¯å¢ä¹åï¼å¼å§å»ºç«ç¬¬ä¸å¼ æ°æ®è¡¨

ç¶åæç §æç¨ä¸çæ¥è¯¢è¯å¥æ°å»ºæ¥è¯¢
(æç¨å°åï¼https://www.kancloud.cn/yunzh...)
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for teacher
-- ----------------------------
DROP TABLE IF EXISTS `teacher`;
CREATE TABLE `teacher` (
`id` bigint(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) DEFAULT '' COMMENT 'å§å',
`sex` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '0ç·ï¼1女',
`username` varchar(255) NOT NULL COMMENT 'ç¨æ·å',
`email` varchar(255) DEFAULT '' COMMENT 'é®ç®±',
`create_time` bigint(11) unsigned NOT NULL DEFAULT '0' COMMENT 'å建æ¶é´',
`update_time` bigint(11) unsigned NOT NULL DEFAULT '0' COMMENT 'æ´æ°æ¶é´',
PRIMARY KEY (`id`),
UNIQUE KEY `nx1HkMqiUveGnJz5lHE7mEcFI5WVew3iXbv3HCwF` (`username`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4;
-- ----------------------------
-- Records of teacher
-- ----------------------------
BEGIN;
INSERT INTO `teacher` VALUES (1, 'å¼ ä¸', 1, 'zhangsan', '[email protected]', 1569721598000, 1569721598000);
INSERT INTO `teacher` VALUES (2, 'æå', 0, 'lisi', '[email protected]', 1569721598000, 1569721598000);
COMMIT;
SET FOREIGN_KEY_CHECKS = 1;
å°ä»£ç å¤å¶å°æ¥è¯¢çªå£
å´åºç°äºå¦ä¸æç¤ºï¼
1071 - Specified key was too long; max key length is 767 bytes, Time: 0.001000s
æç §æ¯ä¾ï¼éå°æ¥éå ç¿»è¯
é误信æ¯ä¸ºï¼âæå®çå ³é®å太é¿ï¼æå¤§å ³é®åé¿åº¦ä¸º767åèâ
äºã产çåå
æ¥é èµæåï¼å¨ä¸ç¯å客ä¸åç°ï¼
妿å¯ç¨äºç³»ç»åéinnodb_large_prefix(MySQL 5.6.41,é»è®¤æ¯å ³éçï¼MySQL 5.7é»è®¤å¼å¯)ï¼å对äºä½¿ç¨DYNAMICæCOMPRESSEDè¡æ ¼å¼çInnoDB表ï¼ç´¢å¼é®åç¼éå¶ä¸º3072åèã妿ç¦ç¨innodb_large_prefixï¼å对äºä»»ä½è¡æ ¼å¼ç表ï¼ç´¢å¼é®åç¼éå¶ä¸º767åèãå°è¯ä½¿ç¨è¶ åºéå¶çç´¢å¼é®åç¼é¿åº¦ä¼è¿åé误ã
注æï¼ä¸é¢æ¯767个åèï¼è䏿¯å符ï¼å ·ä½å°å符æ°éï¼è¿å°±è·å符éæå ³ãGBKæ¯ååèçï¼UTF-8æ¯ä¸åèç
(å¼ç¨èªï¼https://www.cnblogs.com/kerry...)
é£ä¹åå å°±å¾å¥½åæäºï¼æç¨ä¸çæ°æ®è¡¨æ¯utf8mb4ï¼æ¯ååèçï¼åçæ°æ®è¡¨ä¸æé¿çåæ®µï¼é¿åº¦ä¸º255ï¼255 * 4 = 1020 > 767ï¼å æ¤æä¼æ¥éã
`username` varchar(255) NOT NULL COMMENT 'ç¨æ·å',
`email` varchar(255) DEFAULT '' COMMENT 'é®ç®±',
ä¸ãè§£å³æ¹æ³
1ãåå°å段é¿åº¦
å½äºè§£åçä¹åï¼æå æ³å°çå°±æ¯å°è¯åå°å段é¿åº¦ï¼æ¥éªè¯çè®ºçæ£ç¡®æ§ã
SET NAMES utf8mb4;
SET FOREIGN_KEY_CHECKS = 0;
-- ----------------------------
-- Table structure for teacher
-- ----------------------------
DROP TABLE IF EXISTS `teacher`;
CREATE TABLE `teacher` (
`id` bigint(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(128) DEFAULT '' COMMENT 'å§å',
`sex` tinyint(1) unsigned NOT NULL DEFAULT '0' COMMENT '0ç·ï¼1女',
`username` varchar(128) NOT NULL COMMENT 'ç¨æ·å',
`email` varchar(128) DEFAULT '' COMMENT 'é®ç®±',
`create_time` bigint(11) unsigned NOT NULL DEFAULT '0' COMMENT 'å建æ¶é´',
`update_time` bigint(11) unsigned NOT NULL DEFAULT '0' COMMENT 'æ´æ°æ¶é´',
PRIMARY KEY (`id`),
UNIQUE KEY `nx1HkMqiUveGnJz5lHE7mEcFI5WVew3iXbv3HCwF` (`username`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=utf8mb4;
-- ----------------------------
-- Records of teacher
-- ----------------------------
BEGIN;
INSERT INTO `teacher` VALUES (1, 'å¼ ä¸', 1, 'zhangsan', '[email protected]', 1569721598000, 1569721598000);
INSERT INTO `teacher` VALUES (2, 'æå', 0, 'lisi', '[email protected]', 1569721598000, 1569721598000);
COMMIT;
SET FOREIGN_KEY_CHECKS = 1;
æææç255é½ååï¼æ¹ä¸º128ï¼ 128 * 4 = 512 < 767
忬¡è¿è¡æ¥è¯¢è¯å¥ä¹åï¼é¡ºå©éè¿ã
2ãå°MySQLçæ¬å级å°5.7以ä¸
æåå«å¨MySQL5.6ã5.7ãLatestçæ¬ä¸è¿è¡äºè¿æ®µæ¥è¯¢è¯å¥ãç»æµè¯ï¼5.7åLatestçæ¬åä¸å卿¤é®é¢ï¼è¯´æ5.7以ä¸çæ¬ç¡®å®é»è®¤å¼å¯äºinnodb_large_prefixã
3ãæå¨å¼å¯innodb_large_prefix
éè¦æ»¡è¶³ä¸é¢å 个æ¡ä»¶(åèhttps://www.cnblogs.com/kerry...)ï¼
1ï¼ ç³»ç»åéinnodb_large_prefix为ON
2ï¼ ç³»ç»åéinnodb_file_format为Barracuda
3ï¼ ROW_FORMAT为DYNAMICæCOMPRESSED
åãæ»ç»
1ãçæ¬
æç¨ä¸æå°ï¼MySQL使ç¨5.6çæ¬å5.7çæ¬ï¼å¹¶æ²¡æå½±åï¼äºå®ä¸è¿æ¬¡åç°çé®é¢ï¼è¯´æäºä¸åçæ¬çMySQLè¿æ¯æè®¸å¤åºå«çã
2ãXAMPPå ç½®çMySQLåMariaDB
é£ä¹ï¼å¨ä¹å使ç¨XAMPPæ¶ï¼ä½¿ç¨çåºè¯¥å°±æ¯MySQL5.6åï¼ä¸ºä»ä¹æ²¡æåºç°è¿ä¸ªé误å¢ï¼
å»XAMPPå®ç½ä¸é¢ä¸çï¼æçªç¶åç°ï¼ç°å¨çXAMPPéæç并䏿¯MySQLï¼èæ¯æ©å°±æ¢æäºå®ç忝ââMariaDBï¼
坿¯ï¼æ°çç软件éé¢åççï¼å°±æ¯MySQLåï¼
æ±ç卿 ¹é®åºçæåº¦ï¼ææå¼äºXAMPPçæ§å¶å°ï¼å¨å½ä»¤è¡ä¸è¾å ¥mysql
ç»æè¯å®äºï¼ç¡®å®æ¢æäºMariaDBï¼ã