Unable to execute upgrade script /xx/xx/schema-40to410.sql
问题背景: 在一个新装的操作系统上面安装CloudStack4.1.1,执行到cloudstack-setup-management之后,CloudStack开始启动服务中报错 根据以上日志显示,CloudStack程序发现其所在系统上面的CloudStack数据库实例的版本为4.0.0,而代码版本为4.1.1,所以必须进行数据库实例的升级,于是开始执行schema-40to410.sql 这个文件,打开该sql文件:/usr/share/cloudstack-management/setup/db/schema-40to410.sql,发现如下语句:
1
2
3
4
5
6
7
8
9
10
11
12
|
--; -- Schema upgrade from 4.0.0 to 4.1.0; --; use cloud; SET foreign_key_checks = 0;
alter table vm_template add size bigint unsigned;
alter table vm_template add state varchar (255);
alter table vm_template add update_count bigint unsigned;
alter table vm_template add updated datetime;
alter table storage_pool add storage_provider_id bigint unsigned;
alter table storage_pool add scope varchar (255);
alter table storage_pool modify id bigint unsigned AUTO_INCREMENT UNIQUE NOT NULL ;
|
第一句修改表架构的就是对vm_template表增加一个size字段,但是毋庸置疑,我们安装的就是cloudstack4.1.1,根本不存在升级的问题
经过查阅,这是一个BUG,对我而言,这个BUG我也是第一次遇到,据说CloudStack4.2已经完整修复。
现阶段解决方法:
1
2
|
[root@CloudManager ~] # cloudstack-setup-d^Cabases cloud:1qaz2wsx@localhost --deploy-as=root:1qaz2wsx -e file -m 1qaz2wsx -k 1qaz2wsx
[root@CloudManager ~] # cloudstack-setup-management
|
以上两条命令执行两遍即可。
真乃神奇的BUG。
本文转自 暗黑魔君 51CTO博客,原文链接:http://blog.51cto.com/clovemfong/1340173,如需转载请自行联系原作者