ECS: ECSSync 마이그레이션 오류: MySQLSyntaxErrorException: '필드 목록'에 알 수 없는 열 'source_md5'가 있습니다.
摘要: Centera 클립을 실제로 마이그레이션하지 않아도 ECSSync 마이그레이션이 즉시 완료됩니다.
本文适用于
本文不适用于
本文并非针对某种特定的产品。
本文并非包含所有产品版本。
症状
이 문제는 Centera에서 ECS로 ECSSync를 마이그레이션하는 동안 발생합니다.
ECSSync 마이그레이션은 실제로 마이그레이션할 Centera 클립이 없어도 즉시 완료됩니다.
/var/log/ecssync/ecs-sync.log 파일에 다음 오류가 나타납니다.
2020-05-04 03:08:38 WARN [sync-pool-1-t-15] SyncTask: O--! object DNVBT3VHL1NE1e2NMV9CJDMQV5FG41BCFNF5EM0AC0A4KU05821DC failed
com.mysql.jdbc.exceptions.jdbc4.MySQLSyntaxErrorException: Unknown column 'source_md5' in 'field list'
at sun.reflect.GeneratedConstructorAccessor29.newInstance(Unknown Source)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
... <output truncated> ..
原因
이 오류는 이전 버전의 ECSSync에서 생성된 데이터베이스 테이블을 사용하기 때문에 발생합니다.
다음은 최신 절차에 따라 생성된 테이블의 예입니다. 이 표에는 source_md5 열이 포함되지 않습니다.
MariaDB [ecs_sync]> describe <table_name>; +-------------------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------------+---------------+------+-----+---------+-------+ | source_id | varchar(54) | NO | PRI | NULL | | | target_id | varchar(54) | YES | | NULL | | | is_directory | int(11) | NO | | NULL | | | size | bigint(20) | YES | | NULL | | | mtime | datetime | YES | | NULL | | | status | varchar(32) | NO | MUL | NULL | | | transfer_start | datetime | YES | | NULL | | | transfer_complete | datetime | YES | | NULL | | | verify_start | datetime | YES | | NULL | | | verify_complete | datetime | YES | | NULL | | | retry_count | int(11) | YES | | NULL | | | error_message | varchar(2048) | YES | | NULL | | | is_source_deleted | int(11) | YES | | NULL | | +-------------------+---------------+------+-----+---------+-------+ 13 rows in set (0.00 sec)
ECSSync 버전 3.2.9는 소스 MD5 체크섬을 추적하기 위해 데이터베이스 테이블에 열을 추가했습니다(릴리스 노트에 언급됨).
解决方案
이 버전으로 업그레이드한 후 새 데이터베이스 테이블을 만들거나 적절한 열을 추가해야 합니다. MySQL 셸에서 다음을 수행합니다.
alter table <table_name> add column source_md5 VARCHAR(32);
테이블은 추가 열이 있는 다음 예와 같아야 합니다.
MariaDB [ecs_sync]> describe <table_name>; +-------------------+---------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------------------+---------------+------+-----+---------+-------+ | source_id | varchar(54) | NO | PRI | NULL | | | target_id | varchar(54) | YES | | NULL | | | is_directory | int(11) | NO | | NULL | | | size | bigint(20) | YES | | NULL | | | mtime | datetime | YES | | NULL | | | status | varchar(32) | NO | MUL | NULL | | | transfer_start | datetime | YES | | NULL | | | transfer_complete | datetime | YES | | NULL | | | verify_start | datetime | YES | | NULL | | | verify_complete | datetime | YES | | NULL | | | retry_count | int(11) | YES | | NULL | | | error_message | varchar(2048) | YES | | NULL | | | is_source_deleted | int(11) | YES | | NULL | | | source_md5 | varchar(32) | YES | | NULL | | +-------------------+---------------+------+-----+---------+-------+ 14 rows in set (0.00 sec) MariaDB [ecs_sync]>
(여기서 <table_name> 는 기존 테이블의 이름입니다.)
受影响的产品
ECS文章属性
文章编号: 000081990
文章类型: Solution
上次修改时间: 07 7月 2026
版本: 5
从其他戴尔用户那里查找问题的答案
支持服务
检查您的设备是否在支持服务涵盖的范围内。