mysql에서 event scheduler가 에러가 있다고 나오는 경우
Cannot proceed because system tables used by Event Scheduler were found damaged at server start 라고 나오는 경우
/var/lib/mysql/mysql 에서
mysqlcheck --auto-repair --all-databases --user 유저명 --password
systemctl restart mysqld
mysqlcheck
table을 유지 보수하는데 사용하는 클라이언트 프로그램 ( 확인, 복구, 분석의 역할 수행 )
- 서비스가 올라와 있는 상태에서만 사용 가능
- 작업 진행 중에 테이블은 read-only상태
mysqlcheck --auto-repair
: 테이블이나 기타 손상된 부분을 자동 복구mysqlcheck --auto-repair _DB명_ --user 유저명 --password
: 특정 데이터베이스mysqlcheck --auto-repair --all-databases --user 유저명 --password
: 전체 데이터베이스mysqlcheck --optimize
: 데이터베이스 최적화
- 이벤트 스케줄러에 문제가 있다고 나오면
- mysql_upgrade –user 유저명 –password 를 하라고 함
- 이 구문은 mysql자체가 아닌 테이블을 업그레이드 하는것
- 업그레이드 하는 mysql 버전과 호환되지 않을 가능성이 있는 것을 알려주고, 시스템 테이블을 업그레이드 해서 새로운 권한 또는 기능들을 사용할 수 있게 도와준다.
- 버전에 상관 없이 dump데이터를 쌓고나면 업스레이드 해주는 것을 권장한다. ( 버전 호환이 안되는 경우가 있기 때문 )
- mysql_upgrade를 실행하면 mysql_upgrade_info가 생겨서 “이미 업그레이드가 완료되었다.” 라고 나오기 때문에
mysql_upgrade –force를 사용하던가 muysql_upgrade_info를 삭제하고 재 실행
PREVIOUSbash에서 git branch 표시하기
NEXTgit 기본 에디터 변경