우리가 자주 사용 하 여 MySQL 데이터베이스는 오류 데이터 손실의 작업에 의해 발생 하는 경우, MySQL 데이터베이스 백업 데이터 손실 또는 데이터베이스의 다른 문제로 인해 발생 하는 이유의 모든 종류를 피하기 위해 우리를 도울 수 있다.
데이터 백업 바로 가기
이 방법은 공식적인 문서에 의해 검증 되지 않았습니다, 이후 우리 미정 실험 이라고 합니다.
목표: Hosta 호스트에 MySQL 데이터베이스 백업 testa를 백업 하 고 호스트 컴퓨터를 되돌릴 수
테스트 환경:
운영 체제: Winnt4.0, mysql3.22.34, phpmyadmin 2.1.0
MySQL 데이터베이스 백업을 설치 및 Hosta Testa 데이터베이스 구축
호스트 시스템 설치 MySQL 데이터베이스 백업, 아니 종 피 데이터베이스
방법 단계:
Hosta와 호스트, phpMyAdmin 데이터베이스의 목록 보기를 시작 하 고 호스트에 있는 아무 Testa 데이터베이스
Hosta에 MySQL 데이터베이스 백업 설치 디렉토리를 찾아서 데이터베이스 디렉터리 데이터를 찾습니다
내 실험 환경에서이 디렉터리는 C:mysqldata
해당 데이터베이스 이름 C:mysqldatatesta의 하위 디렉터리를 찾습니다
복사 붙여넣기 호스트의 데이터 디렉토리로 Hosta 같습니다 호스트 MySQL 데이터베이스 백업 디렉터리에 파일
호스트 phpMyAdmin 보기 새로 고침 데이터베이스 목록에서 우리 보고 종 피는 이미 등장 하 고, 확인 동작을 수정 하는 쿼리는 정상, 백업 복원 성공
테스트 결론: 해당 파일 디렉터리 복원, 다른 도구를 사용 하 여 백업할 필요가 없습니다으로 MySQL 데이터베이스 파일을 백업, 복원에 의해 저장 될 수 있다.
Ii. 공식적인 접근 (공식 추천):
내보내기 MySQL 데이터베이스 백업에 사용할 Mysqldump 도구:
mysqldump [옵션] 데이터베이스 [테이블]
어떤 테이블을 주지 않으면 전체 데이터베이스가 엑스포트 됩니다.
Mysqldump-도움말, 실행 하 여 mysqldump 버전에서 지 원하는 옵션 표를 얻을 수 있습니다.
참고 경우 mysqldump 없이-빠른 실행 또는-옵션 선택, mysqldump 전체 결과 집합을 메모리에 결과 내보내기 전에 로드 됩니다 큰 데이터베이스를 내보내는 경우이 문제가 될 수 있습니다.
Mysqldump 다음 옵션을 지원합니다.
-추가 잠금
각 테이블을 수출 하기 전에 잠금 테이블을 추가 하 고 테이블을 잠금 해제. (삽입을 위한 빠른 MySQL 데이터베이스 백업으로).
-추가 드롭 테이블
각 문을 만들기 전에 드롭 테이블을 추가 합니다.
-허용 키워드
키워드 열 이름 만들을 수 있습니다. 이것은 열 이름 앞에 테이블 이름에 의해 이루어집니다.
-C,-완료 삽입
(열 이름)와 전체 INSERT 문을 사용 합니다.
-C,-압축
클라이언트와 서버 모두 압축을 지 원하는, 둘 사이의 모든 정보를 압축 하십시오.
-지연
삽입 한 행 삽입 명령 지연.
-E,--확장 삽입
새로운 여러 줄을 사용 하 여 구문을 삽입 합니다. (엄격한 빠르고 insert 문을 제공)
-#,-디버그 [option_string =]
(디버깅)에 대 한 프로그램의 사용을 추적 합니다.
-도움말
도움말 메시지를 표시 하 고 종료 합니다.
-필드 종료 하 여 =...
-필드 동봉 하 여 =...
-필드-옵션-동봉-의해 =...
-필드 탈출 하 여 =...
-필드 종료 하 여 =...
이 선택-T 선택과 함께 사용 하 고 해당 부하 데이터 infile 절와 같은 의미를가지고.
데이터 로드 파일 구문입니다.
-F,-플러시-로그
수출을 시작 하기 전에 MySQL 데이터베이스 백업 서버에 로그 파일을 씻어.
-F,--힘,
경우에 우리가 오류가 SQL 테이블 내보내기 작업 중, 계속.
H,--호스트 =.
명명 된 호스트에 MySQL 데이터베이스 백업 서버에서 데이터를 내보냅니다. 기본 호스트는 로컬 호스트입니다.
-L,-잠금-테이블.
수출을 시작 하는 모든 테이블을 잠급니다.
-T,-아니 만들기 정보
테이블 생성 정보 (CREATE TABLE 문)를 작성 하지 않습니다
-D,--데이터
테이블에 기록 하지 않는 모든 행 정보. 이것은 테이블의 구조만 내보내려는 경우에 유용!
-선택
함께:
--quick--add-drop-table--add-locks--extended-insert--lock-tables
당신은 가장 빠른 가능한 수출 위해 해야한다 MySQL 데이터베이스 백업 서버를 읽고.
-pyour_pass,-비밀 번호 [your_pass =]
서버에 연결할 때 사용할 암호입니다. "Your_pass =" 섹션을 지정 하지 않으면은 mysqldump 터미널에서 비밀 번호를 필요 합니다.
Port_num-P,-포트 = port_num
호스트에 연결할 때 사용 하는 TCP/IP 포트 번호입니다. (이 유닉스 소켓을 사용 하기 때문에 로컬 호스트 이외의 호스트에 연결 하려면 사용 됩니다.) )
-Q,-빠른
하지 버퍼 쿼리, 직접 수출 stdout;을 사용 마십시오 Mysql_use_result () 그것을 할.
-s/경로/로/소켓,--소켓 = / 경로/로/소켓
연결 되어 있을 때 로컬 호스트에서 사용 하는 소켓 파일 (이것은 기본 호스트).
-T,-탭 = 경로-에-몇 가지-디렉토리
각 지정 된 테이블에 대 한 SQL을 포함 하는 Table_name.sql 파일을 만들 명령 및 데이터를 포함 하는 table_name.txt 파일을 만듭니다. 참고: 이것은 Mysqldump mysqld 데몬이입니다 실행 형식의 동일한 컴퓨터에서 실행 중인 경우에 작동는. txt 파일 필드-xxx는-기반 및-라인-XXX 옵션.
-U user_name,-사용자 = user_name
MySQL 서버에 연결할 때 사용 하는 사용자의 이름입니다. 기본 값은 유닉스 로그인 이름입니다.
-O var = 옵션,--세트-변수 var = 옵션
변수의 값을 설정합니다. 가능한 변수는 다음과 같습니다.
-V,--자세한 정보
자세한 정보 표시 모드입니다. 자세한 정보는 프로그램에서 인쇄.
-V,-버전
인쇄 버전 정보 및 출구.
-W,-어디 = ' where 조건 '
선택한 레코드만 내보내집니다.
"-어디 사용자 = = ' JIMF '" "-wuserid > 1" "-wuserid1"
가장 일반적인 mysqldump 전체 데이터베이스 수 있도록 백업을 사용 하 여.
Mysqldump-데이터베이스를 선택 > 백업-file.sql
그러나 그것은 또한 다른 MySQL 데이터베이스 백업 데이터베이스에서 정보를 풍부 하 게 하는 데 유용.
Mysqldump-데이터베이스 선택
Mysql-호스트 원격 호스트 c 데이터베이스 =