Во-первых, я случайный администратор баз данных. поэтому все, что я здесь сделал, основано на некоторых интернет-ссылках (может быть, я неправильно понял несколько вещей).
У меня есть производственная база данных, в которой включен CDC. мы используем этот CDC для регистрации всех изменений базы данных на FTP с использованием пакета служб SSIS. Эти файлы FTP в дальнейшем используются Hadoop.
Из-за какой-то проблемы размер файла базы данных LOG раздулся, а в разделе не осталось места. хотя Partition показывал 7 ГБ как свободные. Но, тем не менее, размер файла журнала не увеличивался, и впоследствии база данных стала недоступной.
Захват CDC Джобс не получался в течение 3 дней. когда я переместил файл журнала в больший раздел. тогда только база данных вышла в онлайн. срок хранения, определенный для CDC, составлял только 3 дня. Позже мы поняли, что все задания SSIS также терпят неудачу. это произошло из-за поврежденных состояний CDC в таблице cdc_states.
это была новая проблема для меня. Я ссылался на эту ссылку
https://www.sqlservercentral.com/Forums/Topic1771404-391-1.aspx
Я изменил поле состояния в таблице cdc_states на состояние TFEND / CS с самым последним start_lsn и его конечным временем из таблицы cdc_capture_log. и задания SSIS начались снова. Да, я потерял данные на 3 дня для FTP-сервера.
Но есть одна таблица, для которой проблема все еще существует, и мне нужна помощь, чтобы изменить поле состояния, чтобы я мог захватить большую часть данных.