최신 1000 개 레코드의 mysqldump


11

데이터베이스에서 최신 1000 레코드의 mysqldump를 가져 오는 방법

답변:


18

mysqldump--where옵션을 선택합니다. 마지막 1000 개의 삽입 된 레코드가 무엇인지 파악하기 위해 일종의 발판이 있다고 가정하면 (예 :라는 자동 증가 필드 id) 다음 mysqldump과 같이 명령 에이를 입력 할 수 있어야합니다 .

mysqldump --where "1=1 ORDER BY id DESC LIMIT 1000" DB_NAME TBL_NAME

1=1당신이 그것을 평가하는 몇 가지 SQL을 제공해야합니까 있도록 "WHERE"키워드가 자동으로 쿼리에 삽입되어 있기 때문에 필요하다.

편집 :이 응답은 --where와 "1 = 1 사이의 공백을 제거하여 공백없이 명령이 오류가 발생했다는 것을 나타냅니다. 방금 테스트 한 결과 공백없이 공백 및 오류로 작동합니다. 에디터가보고있었습니다.

공간을 비울 때 오류가 발생했습니다.

mysqldump: unknown variable 'where1=1 ORDER BY UserID DESC LIMIT 1000'

나는 당신이 제안한 것을하고 당신의 대답을 찬성했지만 무결성 제약 위반은 어떻습니까?
licorna

그것은 완전히 다른 문제입니다. 내 솔루션은 최선의 해킹입니다. 당신은 강하다 문제와 디자인에 매우 의존적이 될 것 즉, 다른 곳에서 다시 행을 퍼팅에 대한 무결성을 원하는 경우에
jj33

대답은 원래 게시 된 이후 이것은 아마도 변경하지만, mysqldump는 워드 프로세서는 이제 옵션 중 하나로 지정해야 말 --where="..."또는 -w "..."참조 dev.mysql.com/doc/refman/5.6/en/...
매트 Passell

1
전체 데이터베이스에서 EVERY TABLE에 대해 마지막 100 행의 mysqldump를 얻는 방법은 무엇입니까?
Rakib
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.