2013-12-17 2 views
0

MySQL 데이터베이스가있는 java 데스크톱 애플리케이션에 관리 정보 시스템이 있습니다. 이전 데이터를 모두 보관하고 싶습니다. 예제 나는 나의 Event_Table을 가지고 있고 그 테이블에 기록 된 이벤트는 1 년 전 이미 시스템과 데이터베이스에서 검색 할 수 없도록 아카이브되어 지길 원하지만 나는 단지 내 컴퓨터의 어딘가에 저장한다 (mysqldump) 필요한 경우 복원하십시오. 저를 도와주세요? 내 MySQL 프로그램 내에서 SQL 문 코드를 수행하여 MySQL 데이터를 처리합니다. 감사합니다.MySQL 테이블 데이터 보관

답변

0

MySQL-Workbench를 사용하고 있다면 거기에서 데이터를 내보낼 수 있습니다. 훨씬 쉽습니다.

MySQL Workbench> 홈> 가져 오기/내보내기 관리 (오른쪽 하단)/필수 DB 선택> 고급 내보내기 옵션 탭> 완료 삽입 [선택됨]> 내보내기 시작.

Export tables with MySQL Workbench with INSERT statements

+0

데이터베이스를 사용하고 있습니까? 내 데이터베이스에 크기가 추가되지 않습니까? 그리고 그것은 자신의 sqldump를 생성하고 있습니까? 아니면 지퍼? – user3109242

+0

SQL 덤프 (각 행에 insert 문 포함)를 생성하므로 쉽게 데이터를 다시 가져올 수 있습니다. –

+0

sqldump가 생성되는 곳은 어디입니까? – user3109242

0

당신은 고려할 수 있습니다 :

  1. 가 사용 MySQL event이 목적

  2. 을 위해 특별히 설계 ARCHIVE 스토리지 엔진, 또는 cron 작업과 테이블에 보관 된 기록을 저장하려면 저장 프로 시저의 SQL 스크립트를 실행하여 선호하는 일정에 따라 실제 테이블에서 보관 된 테이블로 데이터를 전송합니다 (일별, 주별, 월별 등)

0

전체 데이터베이스 또는 일부 특정 테이블을 보관하려면 mysqldump 명령을 사용할 수 있습니다.

Database Dump: 

mysqldump -u "username" -p"password" "databasename" | gzip > /var/www/dump.sql.gz [location and dump file name] 

Specific Tables Dump: 

mysqldump -u "username" -p"password" "databasename" --tables table1 table2 table3 | gzip > /var/www/dump.sql.gz [location and dump file name]