다중 데이터베이스 환경에서 데이터베이스의 모든 데이터를 다른 데이터베이스로 이동하는 방법은 무엇입니까?Django - 여러 데이터베이스 간 데이터 동기화
설정은 다음과 같습니다 :이 작업을 수행 할 수있는 간단한 솔루션/응용 프로그램은
DATABASES = {
'default': {},
'users': {
'NAME': 'user_data',
'ENGINE': 'django.db.backends.sqlite3',
'USER': 'user',
'PASSWORD': 'superS3cret'
},
'customers': {
'NAME': 'customer_data',
'ENGINE': 'django.db.backends.postgresql_psycopg2',
'USER': 'cust',
'PASSWORD': '[email protected]'
}
}
있습니까? 일방향 마이그레이션만으로도 충분합니다. 복잡한 외래 키와 다 대다 연결을 사용하는 수십 개의 모델과 개체가 있기 때문에 모델과 개체를 반복하고 다른 개체로 저장해도 문제가 해결되지 않습니다.
도 객체 생성이 신호를 사용하여 nother 객체를 만들기 때문에 고유 키가 엉망입니다.
백엔드가 다르므로 SQL 덤프를 사용하는 것이 쉬운 일은 아닙니다. 나는 이것을 시도해 보았는데, sqlite3 데이터베이스에서 psql 덤프를 만들 수 없었다. 외래 키를 엉망으로 만든다.
그래서 데이터베이스에서 다른 데이터베이스로 데이터를로드하지만 신호를 보내지 않으며 외래 키와도 잘 작동하는 솔루션이 필요합니다. 그러나 나는 이것을하는 것을 찾을 수 없었다.
에 대한 django-extensions runscript
사용하여 해당 스크립트를 실행 것! – WeizhongTu
'pg_dump'와'pg_restore'를 사용 하시겠습니까? –
@CraigRinger 두 데이터베이스 모두 psql 백엔드를 사용하면 좋을 것 같습니다. sqlite3 덤프는 psql 덤프와 직접 호환되지 않습니다. 다른 한편으로, 나는 이미 문제를 해결했다. 내 대답을 보라. – kdani