레거시 데이터베이스 검사 - 오픈 소스 도구
6204 단어 opensourcedatabasepythontools
이 문서에서는 legacy databases introspection(테이블 정의 및 데이터)에 대한
open-source
도구를 제공합니다. 프로젝트는 완전한 테이블 정보(필드, 제약 조건, 외래 키) 및 데이터를 추출하는 데 사용할 수 있습니다. 이 코드는 Github(MIT 라이선스)에 게시되어 있으며 SQLite
, MySql
및 PostgreSql
에서 작동합니다.Thanks for reading!
✨ 프로젝트 기능
Python-based
도구 SQLite
, MySql
, PostgreSQL
Helpers
: 덤프 테이블 정의(SQL 및 모델) CSV format
사용 가능한 도우미는 Python CLI 내에서 호출 및 사용할 수 있습니다. 궁금한 분들은 생성된 파일here(출력 디렉터리): Tables SQL Definitions , Table Dump Sample 을 빠르게 살펴보실 수 있습니다.
✨ 도구 사용법
이 도구는 Python3 및 GIT가 설치된 모든 환경에서 사용할 수 있습니다.
Step #1 - Clone the sources
$ git clone https://github.com/app-generator/devtool-db.git
$ cd devtool-db
Step #2 - Install the dependencies
$ virtualenv env
$ source env/bin/activate
$ pip install -r requirements.txt
Step #3 - Launch the Python console
$ python
>>>
>>> from util import * # import helpers
>>>
>>> db_sqlite = DbWrapper() # invoke the Base Class
>>> db_sqlite.driver = COMMON.DB_SQLITE # set driver
>>> db_sqlite.db_name = 'samples/api-django.sqlite3' # set db name
>>> db_sqlite.connect() # connect
True
>>> db_sqlite.load_models() # load DB SChema
True
>>> db_sqlite.dump_tables() # Dump tables definitions
True
>>> db_sqlite.dump_tables_data() # Dump data
> Dump data for [api_user_user]
> Dump data for [api_authentication_activesession]
...
(truncated data)
...
> Dump data for [django_migrations]
> Dump data for [django_session]
True
>>> db_sqlite.reset() # reset data
>>>
위의 코드 청크는 다음 작업을 수행합니다.
DbWrapper()
Driver
, Name
.. 등 connect()
도우미를 통해 데이터베이스에 연결load_models()
테이블 메타데이터 검사이 시점부터 테이블 및 데이터와 관련된 모든 정보에 액세스할 수 있습니다. 출력 파일은 출력 디렉토리에 저장됩니다.
SQLITE.sql - api-django.sqlite3 샘플
SQLITE_api_user_user.sql - 테이블 데이터
Thanks for reading!
For more resources, feel free to access:
Reference
이 문제에 관하여(레거시 데이터베이스 검사 - 오픈 소스 도구), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/sm0ke/introspecting-legacy-databases-open-source-tool-5124텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)