You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
3、执行sql脚本 src/init_sql/v1.10.0.sql
在删除索引前,先删除外键
-- 删除外键
set @drop_fk_sql=(select concat('alter table instance_account drop foreign key ',constraint_name) from information_schema.table_constraints where constraint_type='foreign key' and table_name = 'instance_account');
prepare stmt from @drop_fk_sql;
execute stmt;
drop prepare stmt;
set @drop_sql=(select concat('alter table instance_account drop index ', constraint_name) from information_schema.table_constraints where table_schema=database() and table_name='instance_account' and constraint_type='UNIQUE');
prepare stmt from @drop_sql;
execute stmt;
drop prepare stmt;
-- 然后在索引重建后,再重新添加外键
alter table instance_account add unique index uidx_instanceid_user_host_dbname(instance_id, user, host, db_name);
alter table instance_account add constraint fk_account_sql_instance_id foreign key (instance_id) references sql_instance(id);
Traceback (most recent call last):
File "/chac/archer_workdir/Archery-1.10.0/manage.py", line 10, in
execute_from_command_line(sys.argv)
File "/usr/local/python3/lib/python3.9/site-packages/django/core/management/init.py", line 446, in execute_from_command_line
utility.execute()
File "/usr/local/python3/lib/python3.9/site-packages/django/core/management/init.py", line 386, in execute
settings.INSTALLED_APPS
File "/usr/local/python3/lib/python3.9/site-packages/django/conf/init.py", line 92, in getattr
self._setup(name)
File "/usr/local/python3/lib/python3.9/site-packages/django/conf/init.py", line 79, in _setup
self._wrapped = Settings(settings_module)
File "/usr/local/python3/lib/python3.9/site-packages/django/conf/init.py", line 190, in init
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/usr/local/python3/lib/python3.9/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 986, in _find_and_load_unlocked
File "", line 680, in _load_unlocked
File "", line 846, in exec_module
File "", line 983, in get_code
File "", line 913, in source_to_code
File "", line 228, in _call_with_frames_removed
File "/chac/archer_workdir/Archery-1.10.0/archery/settings.py", line 245
Q_CLUSTER = {
^
SyntaxError: invalid syntax
重现步骤
1、 vi archery/settings.py
修改mysql账号密码
2、 pip3 install -r requirements.txt -i https://mirrors.ustc.edu.cn/pypi/web/simple/
3、执行sql脚本 src/init_sql/v1.10.0.sql
在删除索引前,先删除外键
-- 删除外键
set @drop_fk_sql=(select concat('alter table instance_account drop foreign key ',constraint_name) from information_schema.table_constraints where constraint_type='foreign key' and table_name = 'instance_account');
prepare stmt from @drop_fk_sql;
execute stmt;
drop prepare stmt;
set @drop_sql=(select concat('alter table instance_account drop index ', constraint_name) from information_schema.table_constraints where table_schema=database() and table_name='instance_account' and constraint_type='UNIQUE');
prepare stmt from @drop_sql;
execute stmt;
drop prepare stmt;
-- 然后在索引重建后,再重新添加外键
alter table instance_account add unique index uidx_instanceid_user_host_dbname(
instance_id
,user
,host
,db_name
);alter table instance_account add constraint fk_account_sql_instance_id foreign key (instance_id) references sql_instance(id);
注意如果脚本已执行过一次,把上面执行过的语句注释掉
重新执行: python manage.py dbshell < src/init_sql/v1.10.0.sql
4、 python3 manage.py migrate
应用数据库变更报错了
预期外的结果
python3 manage.py migrate
Traceback (most recent call last):
File "/chac/archer_workdir/Archery-1.10.0/manage.py", line 10, in
execute_from_command_line(sys.argv)
File "/usr/local/python3/lib/python3.9/site-packages/django/core/management/init.py", line 446, in execute_from_command_line
utility.execute()
File "/usr/local/python3/lib/python3.9/site-packages/django/core/management/init.py", line 386, in execute
settings.INSTALLED_APPS
File "/usr/local/python3/lib/python3.9/site-packages/django/conf/init.py", line 92, in getattr
self._setup(name)
File "/usr/local/python3/lib/python3.9/site-packages/django/conf/init.py", line 79, in _setup
self._wrapped = Settings(settings_module)
File "/usr/local/python3/lib/python3.9/site-packages/django/conf/init.py", line 190, in init
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/usr/local/python3/lib/python3.9/importlib/init.py", line 127, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "", line 1030, in _gcd_import
File "", line 1007, in _find_and_load
File "", line 986, in _find_and_load_unlocked
File "", line 680, in _load_unlocked
File "", line 846, in exec_module
File "", line 983, in get_code
File "", line 913, in source_to_code
File "", line 228, in _call_with_frames_removed
File "/chac/archer_workdir/Archery-1.10.0/archery/settings.py", line 245
Q_CLUSTER = {
^
SyntaxError: invalid syntax
日志文本
版本
1.9.1
部署方式
Docker
是否还有其他可以辅助定位问题的信息?比如数据库版本等
Python 3.9.19
django-q 1.3.9
The text was updated successfully, but these errors were encountered: