찾다
데이터 베이스MySQL 튜토리얼mysql二进制日志文件恢复数据库_MySQL

mysql二进制日志文件恢复数据库_MySQL

Jun 01, 2016 pm 01:05 PM
mysql바이너리데이터 복구로그 파일

二进制日志的文件的作用

    mysql二进制日志文件用来记录所有用户对数据库操作,即记录用户对数据库操作的sql语句。如果有此文件,当数据库发生意外时,可以通过此文件查看到用户在此文件记录的时间段内用户所做的操作,再和数据库备份配合使用,即可再现用户操作,使数据库恢复。

二进制日志文件的弊端

二进制日志文件开启后,所有对数据库操作的记录均会被记录到此文件,

所以,当长时间开启之后,日志文件会变得很大,占用磁盘空间。

使用二进制日志文件恢复数据库

开启日志文件

mysql默认是不开启日志文件的功能的,需要我们手动开启。操作如下:

1、  打开mysql安装目录\my.ini(windows系统是my.ini文件,linux是my.cnf文件)。

2、  找到[mysqld]这个标签,在此标签下面一行,添加语句:log-bin=binary-log。上面语句中,log-bin说明要开启二进制日志文件,binary-log是二进制日志文件的名字。

(测试的时候我设置的:log-bin=d:/mysql_log/logbin_ouyang.log)

3、  重启mysql服务。可以在mysql安装目录\data 文件夹下看到“binary-log.数字编号”文件,

   如binary-log.000001。以后每重启一次mysql服务,都会重新生成二进制日志文件,

   文件名中的数字编号依次递增。

(你的上一步给出的文件名,加了个序号 还有一个总的文件 index文件 如图1:)

 

恢复数据库

使用日志文件恢复数据库必须要有一个数据库备份(只要是在二进制日志文件功能开启之后备份的就行)。恢复数据库时,可以通过时间恢复,也可以通过操作点恢复。

1、通过时间恢复方法如下:

如果我在2011-04-02 00:00:00时刻开启了二进制日志文件功能,并备份了数据库文件。且在2011-04-02 12:00:00数据库发生异常,需要恢复到2011-04-02 10:00:00。则操作如下:

l         用备份将数据库回复到2011-04-02 00:00:00时候的状态。

l         在命令行输入如下命令:

 

mysqlbinlog --stop-date="你想要恢复的时间"  日志文件的目录\binary-log.000001 | mysql -u root –p

(D:\mysql_log>mysqlbinlog logbin_ouyang.000007 --stop-date="2011-10-23 15:05:00"|mysql -uroot -proot)

这样,系统会自动执行从二进制日志有记录开始截止到2011-04-02 10:00:00,用户所做过的所有操作。与stop-date对应的,还有start-date属性,可以设定执行记录的开始时间。也可以两个属性都设置。

2、通过操作点恢复方法如下:

在命令行中输入mysqlbinlog D:\binary-log.000003 > D:\log.txt,执行后打开log.txt,

查看里面语句,可以发现:在每个操作之前,都会有一个独特的编号,如下红字显示:

/*!*/;

# at 450 /*编号450*/

#110402 15:31:50 server id 1 end_log_pos 529     Query    thread_id=2   exec_time=0  error_code=0

SET TIMESTAMP=1301729510/*!*/;

DROP TABLE `jwc`

此编号随着操作数增多而变大。和时间一样是一个标记,通过操作点恢复的语句如下:

mysqlbinlog --stop-position="450" mysql安装目录\data\binary-log.000001  | mysql -u root –p

这样,系统会自动执行二进制日志中编号最低的语句到编号450语句。

与stop-position对应的,还有start-position属性,可以设定执行记录的开始编号。

附:(你应该看看)

1.0       mysqlbinlog 是mysql自带的一个日志操作工具!

2.0       如果直接打开log文件 可能会是乱码,所以我们一般会:

      D:\mysql_log>mysqlbinlog logbin_ouyang.000003 >log_3.txt  复制下 然后用记事本打开!

   就可以清楚的看到 操作的编号了 或者说(行号)

3.0       如果发生了错误的操作!如果可以的话!你应该立马停止数据库!然后恢复数据!

4.0       如果只是去掉某一个语句,你可以选择恢复两次 ,如图:

  

D:\mysql_log>mysqlbinlog logbin_ouyang.000009 --stop-position=10625|mysql -uroot
     -proot

   D:\mysql_log>mysqlbinlog logbin_ouyang.000009 --start-position=10843|mysql -uroo

     t –proot

5.0 如果发生 Could not read entry at offset 1478: Error in log format or read error. 类似的错误!

   请检查你的编号是否正确!注意这个编号 不是一些编辑器显示的那个行号哦,# at 450 /

经常delete 、update错了!所有给自己个文档!当然我也希望你永远的用不上这个文档 ! 周末愉快! (排版有的乱哈!多多包涵!)

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
MySQL : 초보자가 마스터하는 필수 기술MySQL : 초보자가 마스터하는 필수 기술Apr 18, 2025 am 12:24 AM

MySQL은 초보자가 데이터베이스 기술을 배우는 데 적합합니다. 1. MySQL 서버 및 클라이언트 도구를 설치하십시오. 2. SELECT와 같은 기본 SQL 쿼리를 이해하십시오. 3. 마스터 데이터 작업 : 데이터를 만들고, 삽입, 업데이트 및 삭제합니다. 4. 고급 기술 배우기 : 하위 쿼리 및 창 함수. 5. 디버깅 및 최적화 : 구문 확인, 인덱스 사용, 선택*을 피하고 제한을 사용하십시오.

MySQL : 구조화 된 데이터 및 관계형 데이터베이스MySQL : 구조화 된 데이터 및 관계형 데이터베이스Apr 18, 2025 am 12:22 AM

MySQL은 테이블 구조 및 SQL 쿼리를 통해 구조화 된 데이터를 효율적으로 관리하고 외래 키를 통해 테이블 ​​간 관계를 구현합니다. 1. 테이블을 만들 때 데이터 형식을 정의하고 입력하십시오. 2. 외래 키를 사용하여 테이블 간의 관계를 설정하십시오. 3. 인덱싱 및 쿼리 최적화를 통해 성능을 향상시킵니다. 4. 데이터 보안 및 성능 최적화를 보장하기 위해 데이터베이스를 정기적으로 백업 및 모니터링합니다.

MySQL : 주요 기능 및 기능이 설명되었습니다MySQL : 주요 기능 및 기능이 설명되었습니다Apr 18, 2025 am 12:17 AM

MySQL은 웹 개발에 널리 사용되는 오픈 소스 관계형 데이터베이스 관리 시스템입니다. 주요 기능에는 다음이 포함됩니다. 1. 다른 시나리오에 적합한 InnoDB 및 MyISAM과 같은 여러 스토리지 엔진을 지원합니다. 2.로드 밸런싱 및 데이터 백업을 용이하게하기 위해 마스터 슬레이브 복제 기능을 제공합니다. 3. 쿼리 최적화 및 색인 사용을 통해 쿼리 효율성을 향상시킵니다.

SQL의 목적 : MySQL 데이터베이스와 상호 작용합니다SQL의 목적 : MySQL 데이터베이스와 상호 작용합니다Apr 18, 2025 am 12:12 AM

SQL은 MySQL 데이터베이스와 상호 작용하여 데이터 첨가, 삭제, 수정, 검사 및 데이터베이스 설계를 실현하는 데 사용됩니다. 1) SQL은 Select, Insert, Update, Delete 문을 통해 데이터 작업을 수행합니다. 2) 데이터베이스 설계 및 관리에 대한 생성, 변경, 삭제 문을 사용하십시오. 3) 복잡한 쿼리 및 데이터 분석은 SQL을 통해 구현되어 비즈니스 의사 결정 효율성을 향상시킵니다.

초보자를위한 MySQL : 데이터베이스 관리를 시작합니다초보자를위한 MySQL : 데이터베이스 관리를 시작합니다Apr 18, 2025 am 12:10 AM

MySQL의 기본 작업에는 데이터베이스, 테이블 작성 및 SQL을 사용하여 데이터에서 CRUD 작업을 수행하는 것이 포함됩니다. 1. 데이터베이스 생성 : createAbasemy_first_db; 2. 테이블 만들기 : CreateTableBooks (idintauto_incrementprimarykey, titlevarchar (100) notnull, authorvarchar (100) notnull, published_yearint); 3. 데이터 삽입 : InsertIntobooks (Title, Author, Published_year) VA

MySQL의 역할 : 웹 응용 프로그램의 데이터베이스MySQL의 역할 : 웹 응용 프로그램의 데이터베이스Apr 17, 2025 am 12:23 AM

웹 응용 프로그램에서 MySQL의 주요 역할은 데이터를 저장하고 관리하는 것입니다. 1. MySQL은 사용자 정보, 제품 카탈로그, 트랜잭션 레코드 및 기타 데이터를 효율적으로 처리합니다. 2. SQL 쿼리를 통해 개발자는 데이터베이스에서 정보를 추출하여 동적 컨텐츠를 생성 할 수 있습니다. 3.mysql은 클라이언트-서버 모델을 기반으로 작동하여 허용 가능한 쿼리 속도를 보장합니다.

MySQL : 첫 번째 데이터베이스 구축MySQL : 첫 번째 데이터베이스 구축Apr 17, 2025 am 12:22 AM

MySQL 데이터베이스를 구축하는 단계에는 다음이 포함됩니다. 1. 데이터베이스 및 테이블 작성, 2. 데이터 삽입 및 3. 쿼리를 수행하십시오. 먼저 CreateAbase 및 CreateTable 문을 사용하여 데이터베이스 및 테이블을 작성한 다음 InsertInto 문을 사용하여 데이터를 삽입 한 다음 최종적으로 SELECT 문을 사용하여 데이터를 쿼리하십시오.

MySQL : 데이터 저장에 대한 초보자 친화적 인 접근 방식MySQL : 데이터 저장에 대한 초보자 친화적 인 접근 방식Apr 17, 2025 am 12:21 AM

MySQL은 사용하기 쉽고 강력하기 때문에 초보자에게 적합합니다. 1.MySQL은 관계형 데이터베이스이며 CRUD 작업에 SQL을 사용합니다. 2. 설치가 간단하고 루트 사용자 비밀번호를 구성해야합니다. 3. 삽입, 업데이트, 삭제 및 선택하여 데이터 작업을 수행하십시오. 4. Orderby, Where and Join은 복잡한 쿼리에 사용될 수 있습니다. 5. 디버깅은 구문을 확인하고 쿼리를 분석하기 위해 설명을 사용해야합니다. 6. 최적화 제안에는 인덱스 사용, 올바른 데이터 유형 선택 및 우수한 프로그래밍 습관이 포함됩니다.

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

MinGW - Windows용 미니멀리스트 GNU

MinGW - Windows용 미니멀리스트 GNU

이 프로젝트는 osdn.net/projects/mingw로 마이그레이션되는 중입니다. 계속해서 그곳에서 우리를 팔로우할 수 있습니다. MinGW: GCC(GNU Compiler Collection)의 기본 Windows 포트로, 기본 Windows 애플리케이션을 구축하기 위한 무료 배포 가능 가져오기 라이브러리 및 헤더 파일로 C99 기능을 지원하는 MSVC 런타임에 대한 확장이 포함되어 있습니다. 모든 MinGW 소프트웨어는 64비트 Windows 플랫폼에서 실행될 수 있습니다.

DVWA

DVWA

DVWA(Damn Vulnerable Web App)는 매우 취약한 PHP/MySQL 웹 애플리케이션입니다. 주요 목표는 보안 전문가가 법적 환경에서 자신의 기술과 도구를 테스트하고, 웹 개발자가 웹 응용 프로그램 보안 프로세스를 더 잘 이해할 수 있도록 돕고, 교사/학생이 교실 환경 웹 응용 프로그램에서 가르치고 배울 수 있도록 돕는 것입니다. 보안. DVWA의 목표는 다양한 난이도의 간단하고 간단한 인터페이스를 통해 가장 일반적인 웹 취약점 중 일부를 연습하는 것입니다. 이 소프트웨어는

SecList

SecList

SecLists는 최고의 보안 테스터의 동반자입니다. 보안 평가 시 자주 사용되는 다양한 유형의 목록을 한 곳에 모아 놓은 것입니다. SecLists는 보안 테스터에게 필요할 수 있는 모든 목록을 편리하게 제공하여 보안 테스트를 더욱 효율적이고 생산적으로 만드는 데 도움이 됩니다. 목록 유형에는 사용자 이름, 비밀번호, URL, 퍼징 페이로드, 민감한 데이터 패턴, 웹 셸 등이 포함됩니다. 테스터는 이 저장소를 새로운 테스트 시스템으로 간단히 가져올 수 있으며 필요한 모든 유형의 목록에 액세스할 수 있습니다.

SublimeText3 Mac 버전

SublimeText3 Mac 버전

신 수준의 코드 편집 소프트웨어(SublimeText3)

메모장++7.3.1

메모장++7.3.1

사용하기 쉬운 무료 코드 편집기