文章原地址 https://techglimpse.com/openstack-db-sync-error-mysql-character-set-solution/
执行
# su -s /bin/sh -c "keystone-manage db_sync" keystone
时出现错误:CRITICAL keystone [-] DBError: (pyMysqL.err.InternalError) (1071,u'Specified key was too long; max key length is 767 bytes') [sql: u'\nCREATE TABLE migrate_version (\n\trepository_id VARCHAR(250) NOT NULL,\n\trepository_path TEXT,\n\tversion INTEGER,\n\tPRIMARY KEY (repository_id)\n)\n\n']
Overall,you need to perform below steps:
- Replace utf8mb4 to utf8in all configuration files
- ReloadMysqLddaemon
- Drop databasekeystone or glance or nova or neutron(for whichever service you were getting error and don’t worry,you haven’t populated the database yet and it’s safe to remove)
- Create databasekeystone or glance or nova or neutron
- Try db_sync or populate the database using OpenStack commands. It should probably work,else try Fix 2.
1.将/etc/MysqL/mariadb.conf.d目录下的所有.cnf文件中出现uft8mb4的地方都修改成uft8
4.重新建立keystone数据库
5.输入su -s /bin/sh -c "keystone-manage db_sync" keystone 应该就可以运行了,不行的话实时Fix2.
同时推荐文章http://blog.csdn.net/zhujie_hades/article/details/52104116
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。