백업과 복원
백업
현재의 데이터베이스를 다른 매체에 보관하는 작업이다.
복원
데이터베이스에 문제 발생 시 다른 매체에 백업된 데이터를 이용해 원상태로 돌려놓는 작업이다.
DBA(DataBase Administrator)가 해야 할 가장 중요한 일이 백업과 복원이다.
DB에 로그 남기기
DB를 핸들링하는 코드
코드 설명
__init__()
데이터베이스에 연결하고 테이블을 만드는 함수
pymysql.connect() 메서드를 사용하여 mySQL에 연결한다.
이 때, 호스트명, 포트, 로그인, 암호, 접속할 DB 등을 파라미터로 지정할 수 있다.
커넥션 객체를 통해 데이터베이스에서 SQL문을 대신 실행해주고 결과를 반환해줄 커서 객체를 생성한다.
커서 객체를 생성하는 이유는 커서 객체에 DB 작업을 위한 함수들이 포함되어 있기 때문이다.
SQL 문장을 실행한다.
인자로는 SQL문이 들어오게 된다.
앞에서 입력한 데이터는 아직 트랜잭션 이후 완전히 저장되지 않았기 때문에 커밋을 통해 입력한 데이터를 저장한다.
time_format()
레코드의 시간을 형식화한다.
record.nowstr에 현재 시간을 형식에 맞는 문자열로 저장한다.
emit()
로그 레코드를 받아서 데이터베이스에 기록한다.
로그 메시지를 포맷한다.
시간을 형식화한다.
__del__()
객체가 소멸될 때 호출되고, 데이터베이스 연결을 닫는다.
로그를 기록하고, 데이터베이스에 저장하는 코드
코드 설명
__main__
인자로 된 이름을 가진 로거를 가져온다.
인자의 레벨 이상의 로그를 기록하도록 설정한다.
인스턴스를 생성하고 이를 로거에 추가한다.
로그 메시지가 발생할 때마다 핸들러를 통해 데이터베이스에 저장된다.
'SKN Family AI Camp > MySQL' 카테고리의 다른 글
SQL(1) (0) | 2024.05.20 |
---|