
다음 오류로 인해 MySQL을 버전 8.2로 업그레이드하지 못했습니다.
2024-01-16T22:04:31.970007Z 4 [System] [MY-013381] [Server] Server upgrade from '80100' to '80200' started.
2024-01-16T22:05:05.196376Z 4 [Warning] [MY-011836] [InnoDB] sdi_delete failed: Record Doesn't exist: tablespace_id: 1 Key: 1 4247748
2024-01-16T22:05:05.349958Z 4 [ERROR] [MY-013178] [Server] Execution of server-side SQL statement '-- Copyright (c) 2018, 2023, [blah blah blah] -- Alters the sys_config table for upgrades -- ALTER TABLE sys_config CHARACTER SET utf8mb4; ' failed with error code = 3958, error message = 'Failed to delete sdi for sys.sys_config in sys/sys_config due to missing record.'.
2024-01-16T22:05:05.352770Z 0 [ERROR] [MY-013380] [Server] Failed to upgrade server.
2024-01-16T22:05:05.352787Z 0 [ERROR] [MY-010119] [Server] Aborting
mysqld_safe
연속 루프를 계속 시도합니다.
나는 이와 같은 질문을 많이 보았고 MySQL 문서의 문제 해결 가이드에서도 이 문제를 해결하려면 돌아가서 이전 버전의 MySQL을 사용하여 문제를 정리해야 한다는 내용을 보았습니다. 그러나 이전 버전을 실행하려고 하면 다음과 같은 결과가 나타납니다.
2024-01-16T22:11:18.042211Z 1 [ERROR] [MY-014061] [InnoDB] Invalid MySQL server downgrade: Cannot downgrade from 80200 to 80035. Downgrade is only permitted between patch releases.
따라서 실패한 업그레이드가 이전 상태로 완전히 롤백되지 않은 것 같습니다. 업그레이드가 완료되지 않았음에도 일부 데이터에서는 버전 80200이라고 생각합니다.
이제 테이블을 정리하기 위해 어떤 버전의 MySQL도 실행할 수 없습니다. 거기에 있습니까?
- mysqld를 실행할 필요 없이 실행할 수 있는 또 다른 유틸리티는 무엇입니까?
- 업그레이드가 진행되도록 sys_config를 수동으로 수정하는 방법은 무엇입니까? MySQL이 다시 빌드할 수 있도록 삭제하시겠습니까?