source xxx.sql时报错ERROR 1071 (42000): Specified key was too long; max key length is 767 bytes,如何是出现错误时打印行数
时间: 2023-10-13 13:29:06 浏览: 169
MySQL错误“Specified key was too long; max key length is 1000 bytes”的解决办法
当你使用source命令导入SQL文件时,可能会遇到“Specified key was too long”错误。这是因为MySQL默认使用utf8编码,而utf8编码下,一个字符最多占用3个字节,因此在创建索引时,最多只能使用(767/3) = 255个字符。
要解决这个问题,你可以将字符集改为utf8mb4,这样一个字符最多占用4个字节,就可以使用更多的字符了。
可以使用以下命令将字符集改为utf8mb4:
```
ALTER DATABASE your_database_name CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
```
另外,如果你想在出错时打印行数,可以使用以下命令:
```
mysql> set profiling=1;
mysql> source /path/to/your/sql/file.sql;
mysql> show profiles;
mysql> show profile for query 1;
```
这样就可以查看每一个SQL语句的执行时间和行数了。
阅读全文