최근에 여러 데이터베이스가 포함된 SQL 덤프 파일을 받았습니다. 이를 각 데이터베이스마다 하나씩 여러 .sql 파일로 쉽게 분할하는 데 사용할 수 있는 도구가 있습니까?
답변1
or 문이 .sql
있는 일반 텍스트 파일 이라고 가정하면 다음 을 사용하여 이 작업을 효율적으로 수행할 수 있습니다 .CREATE SCHEMA
CREATE DATABASE
split
$ split -p 'CREATE DATABASE' bigfile.sql splitsql_
그러면 각 파일이 발견된 명령문으로 시작되는 등 splitsql_aa
의 새로운 파일 세트가 생성됩니다 .splitsql_ab
CREATE
매뉴얼 split
:
NAME split -- split a file into pieces [...] -p pattern The file is split whenever an input line matches pattern, which is interpreted as an extended regular expression. The matching line will be the first line of the next output file. This option is incompatible with the -b and -l options.