2014-11-28 4 views
0

여러 사용자 (다른 사용자)와 oracle 데이터베이스를 가지고 있는데 .sql 파일에있는 스키마를 가져오고 싶습니다.오라클 사용자 스키마 가져 오기

내 .sql 파일에서 특정 사용자에 대한 가져 오기를 지정하는 방법이 궁금합니다.

미리 감사드립니다.

+0

'가져 오기'를 수행하기 위해 무엇을 사용할 것입니까? .sql 파일이있는 경우 데이터베이스에 로그인하고 해당 파일을 정확히 실행하기 만하면됩니다. 예를 들어, 파일에 CREATE USER가 있습니까? 아니면 스키마 객체 자체입니까? – thatjeffsmith

+0

이 질문은 데이터베이스 관리 (dba)와 관련이 있습니다. 나는 당신이 이것을 http://dba.stackexchange.com/ 에서 물어볼 것을 제안합니다. 그것들은 그들의 전문 분야이기 때문에 좋은 해결책을 제공 할 것입니다. – Mussa

답변

0

SQL 파일을 검사하십시오. 그 안에있는 명령이 스키마 이름을 지정하면 다른 스키마로 가져 오기 전에 스키마 이름을 수정해야합니다.

예를 들어, 다음과 같이 명령을 않습니다

CREATE TABLE scott.mytable (...) 

또는 같은 :

CREATE TABLE mytable (...) 

을 스키마 이름 (예 : "스캇은") 하드 코딩 된 경우에, 당신에게 ' 신중하게 제거하려면 SQL 스크립트를 편집해야합니다.

그렇지 않으면 대상 사용자 이름으로 로그인하고 SQL 스크립트를 실행하기 만하면됩니다.

0

SQL 파일의 내용에 따라 다릅니다. 가져 오기를 수행하지 않고 SQL 파일을 실행하고 있으며 "스크립트 실행"과 비슷합니다. 아무 것도 포함 할 수 있습니다. 따라서 우리가 여기에서 말하기는 어렵습니다. 파일을 어떻게 실행해야하는지, 어떤 내용인지는 알지 못합니다. 객체의 소유자를 정의하는 방법은 여러 가지가 있습니다. 명시 적으로 또는 암시 적으로 수행 할 수 있습니다. 따라서 스크립트에서 사용자 (스키마)가 지정되었는지 확인해야합니다. 그것이 맞다면 어디에서 지정되고 어떻게됩니까?

가장 간단한 경우 사람들은 현재 스키마에 개체를 연결하고 설치하는 스크립트를 작성합니다. 때로는 연결하지 않아도됩니다. 따라서이 경우 스크립트를 호출 할 사용자로 스크립트를 호출 할 수 있습니다.

완전히 다른 방법으로 주어진 소유자가 각 개체 참조에 지정되어있는 스크립트를 만들 수 있습니다. 이 경우 글로벌 검색을 수행하고 대체하게됩니다.

스크립트가 작동하는 방식을 알려주십시오. 자세히 설명해 드리겠습니다.

관련 문제