Incremental export/import replacement
Hi,
Please help me with following task:
a. A daily incremental export from a 9.2.0.3 database.
b. Import into a 10.2.0.4 database.
Since incremental exp/imp is no longer available for 9i and 10g, does Oracle have a replacement for this functionality? Does RMAN incremental backup/restore able to do the same thing (cross version recovery)? Or any other way to do this?
Thank you very much in advance.
Yong Suo
I'm still confused at the point of this test... If you are running data entry applications in parallel against both databases, why would the two databases be out of sync at the end of the day? Wouldn't the final test be that the two systems didn't require manual resynchronization? If you're going to replace all the data in the new database at the end of the day if it doesn't match what was in the old database, you're defeating the purpose of running any non-reporting application against the new database.
If you want to replace all the data in a particular set of tablespaces, you could certainly use transportable tablespaces. That would discard all the data in those tablespaces in the 10g database every day, which as I mentioned above seems rather odd if you're trying to run a parallel production environment. You could also configure replication between the systems via Streams or materialized views which would only replicate changes.
Justin
Similar Messages
-
Increment export/import best way
Hi,
i want to schedule the database backup thru oracle export utility. And database version is 10g (standard edition)
1) one full backup (Complete) in a day after that increment backup after every hour in a day (as my database is small in size)
what are steps i have to do to implement this
2) Is it possible to import this data and how, what are the steps require to import this data in other database.
Thanks
Naveen Dutt858030 wrote:
Hi,
i want to schedule the database backup thru oracle export utility. And database version is 10g (standard edition)
1) one full backup (Complete) in a day after that increment backup after every hour in a day (as my database is small in size)
what are steps i have to do to implement this
2) Is it possible to import this data and how, what are the steps require to import this data in other database.
Thanks
Naveen DuttUsing export/expdp for backups is a poor strategy.
http://download.oracle.com/docs/cd/B19306_01/backup.102/b14192/intro010.htm#sthref110
You should be using RMAN
HTH
Srini -
Can we import incremental export.dmp in 8i
Hi all,
I have Exported .dmp file(Incremental Export) taken from Oracle 8.0.4 Database. How can I import this file into Oracle 8i Database(Another different Database).Hi Madhuri,
Please refer to the below link. I think this should resolve your query.
http://help.sap.com/saphelp_46c/helpdata/en/5b/d230b743c611d182b30000e829fbfe/content.htm
thanks!
VS. -
Incremental Export and Import...Please Help..
Hello experts!
Please help.....
We are running a program with and same database with same user/password in different location and branches.
We dont have any centralization, regularly after updating stock and sales they will send the .dmp file through e-mail, I will recieve and rename it and insert the stock and sales tables in Head Office and back to original position.
Regularly it is difficult, I want some automation Export/Import command so that I can update the recieved updated part of file.
The story is big, kindly help...it is important and urgent.
Thanks for help in advance,
Syed Muzzammil.Hi ,
Check with below pdfs.
check whther they are helpful or not
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/303af93a-0811-2a10-0687-f3514f0103c8
https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/508e36c5-5914-2b10-a795-d25997cf3270
EP6 system copy
Koti Reddy -
Problem with EXPORT IMPORT PROCESS in ApEx 3.1
Hi all:
I'm having a problem with the EXPORT IMPORT PROCESS in ApEx 3.1
When I export an application, and try to import it again. I get this error message
ORA-20001: GET_BLOCK Error. ORA-20001: Execution of the statement was unsuccessful. ORA-06550: line 16, column 28: PLS-00103: Encountered the symbol "牃慥整㈰㈯⼴〲㐰〠㨷㐵㈺′䵐" when expecting one of the following: ( - + case mod new not null <an identifier> <a double-quoted delimited-identifier> <a bind variable> avg count current exists max min prior sql stddev sum variance execute forall merge time timestamp in
As a workaround, I check the exported file and found this
wwv_flow_api.create_flow
p_documentation_banner=> '牃慥整⠤㈰㈯⼴〲㠰〠㨷㠵㈺′äµ
And when I replace with this
p_documentation_banner=> ' ',
I can import the application without the error.
somebody knows why I have to do this??
Thank you all.
Nicolas.Hi,
This issue seems to have been around for a while:
Re: Error importing file
I've had similar issues and made manual changes to the file to get it to install correctly. In my case, I got:
ORA-20001: GET_BLOCK Error. ORA-20001: Execution of the statement was unsuccessful.<br>ORA-02047: cannot join the distributed transaction in progress<br>begin execute immediate 'alter session set nls_numeric_characters='''||wwv_flow_api.g_nls_numeric_chars||'''';end;There are several suggestions, if you follow that thread, about character sets or reviewing some of the line breaks within pl/sql code within your processes etc. Not sure what would work for you. -
Using export/import to migrate data from 8i to 9i
We are trying to migrate all data from 8i database to 9i database. We plan to migrate the data using export/import utility so that we can have the current 8i database intact. And also the 8i and 9i database will reside on the same machine. Our 8i database size is around 300GB.
We plan to follow below steps :
Export data from 8i
Install 9i
Create tablespaces
Create schema and tables
create user (user used for exporting data)
Import data in 9i
Please let me know if below par file is correct for the export :
BUFFER=560000
COMPRESS=y
CONSISTENT=y
CONSTRAINTS=y
DIRECT=y
FEEDBACK=1000
FILE=dat1.dmp, dat2.dmp, dat3.dmp (more filenames here)
FILESIZE=2048GB
FULL=y
GRANTS=y
INDEXES=y
LOG=export.log
OBJECT_CONSISTENT=y
PARFILE=exp.par
ROWS=y
STATISTICS=ESTIMATE
TRIGGERS=y
TTS_FULL_CHECK=TRUE
Thanks,
Vinod BhansaliI recommend you to change some parameters and remove
others:
BUFFER=560000
COMPRESS=y -- This will increase better storage
structure ( It is good )
CONSISTENT=y
CONSTRAINTS=y
DIRECT=n -- if you set that parameter in yes you
can have problems with some objects
FEEDBACK=1000
FILE=dat1.dmp, dat2.dmp, dat3.dmp (more filenames here)
FILESIZE=2048GB
FULL=y
GRANTS=y -- this value is the default ( It is
not necesary )
INDEXES=y
LOG=export.log
OBJECT_CONSISTENT=y -- ( start the database in restrict
mode and do not set this param )
PARFILE=exp.par
ROWS=y
STATISTICS=ESTIMATE -- this value is the default ( It is
not necesary )
TRIGGERS=y -- this value is the default ( It is
not necesary )
TTS_FULL_CHECK=TRUE
you can see what parameters are not needed if you apply
this command:
[oracle@ozawa oracle]$ exp help=y
Export: Release 9.2.0.1.0 - Production on Sun Dec 28 16:37:37 2003
Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.
You can let Export prompt you for parameters by entering the EXP
command followed by your username/password:
Example: EXP SCOTT/TIGER
Or, you can control how Export runs by entering the EXP command followed
by various arguments. To specify parameters, you use keywords:
Format: EXP KEYWORD=value or KEYWORD=(value1,value2,...,valueN)
Example: EXP SCOTT/TIGER GRANTS=Y TABLES=(EMP,DEPT,MGR)
or TABLES=(T1:P1,T1:P2), if T1 is partitioned table
USERID must be the first parameter on the command line.
Keyword Description (Default) Keyword Description (Default)
USERID username/password FULL export entire file (N)
BUFFER size of data buffer OWNER list of owner usernames
FILE output files (EXPDAT.DMP) TABLES list of table names
COMPRESS import into one extent (Y) RECORDLENGTH length of IO record
GRANTS export grants (Y) INCTYPE incremental export type
INDEXES export indexes (Y) RECORD track incr. export (Y)
DIRECT direct path (N) TRIGGERS export triggers (Y)
LOG log file of screen output STATISTICS analyze objects (ESTIMATE)
ROWS export data rows (Y) PARFILE parameter filename
CONSISTENT cross-table consistency(N) CONSTRAINTS export constraints (Y)
OBJECT_CONSISTENT transaction set to read only during object export (N)
FEEDBACK display progress every x rows (0)
FILESIZE maximum size of each dump file
FLASHBACK_SCN SCN used to set session snapshot back to
FLASHBACK_TIME time used to get the SCN closest to the specified time
QUERY select clause used to export a subset of a table
RESUMABLE suspend when a space related error is encountered(N)
RESUMABLE_NAME text string used to identify resumable statement
RESUMABLE_TIMEOUT wait time for RESUMABLE
TTS_FULL_CHECK perform full or partial dependency check for TTS
VOLSIZE number of bytes to write to each tape volume
TABLESPACES list of tablespaces to export
TRANSPORT_TABLESPACE export transportable tablespace metadata (N)
TEMPLATE template name which invokes iAS mode export
Export terminated successfully without warnings.
[oracle@ozawa oracle]$
Joel P�rez -
Suggestion needed in export/import ODI topology from one machine to other
Hi,
I am trying to export all ODI topologies from one machine(A) to other machine(B).Can I export/import whole topology.While doing the same whether created repositories and existing topolgy in machine (B) would be replaced.I don't want to get the existing things in machine(B) to be replaced.Can anyone suggest on this?you can always select the Import Mode as 'INSERT' if you don't want anything to be overwritten. Yes, you can export/import the topology, logical topology, execution environment by using the options in the Topology tab(top right corner dropdown).
-
EXPORT/IMPORT 에 관하여 (2)
제품 : ORACLE SERVER
작성날짜 : 2003-11-19
Q> 테이블 LEVEL EXPORT 방법의 종류가 하나 이상 있습니까?
▶▶ 말씀드리자면 대답은 그렇기도 하고 아니기도 합니다. 테이블 export는 두
가지 방법 중 하나가 될 수 있습니다.
--- 사용자가 그 소유한 테이블을 export 한다.
exp donald/duck tables=huey, dewey, louie
--- SYSTEM/MANAGER 같은 DBA가 사용자의 집합에 속해 구분되어진 테이블
들을 export 한다.
exp system/manager tables=scott.emp, humty, dumpty
위의 두가지 export 방법 모두 테이블 level의 export로 구분되어집니다.
후자의 경우에는 export가 DBA에 의해서 행해지기 때문에 import도 DBA에
의해서 행해져야 합니다.
Q> FULL EXPORT 를 받으려면 사용자가 반드시 DBA 이어야 합니까?
▶▶ 아닙니다. 버전 6 에서는 그러했지만, 이는 오라클7 role 의 introduction
에서 바뀌었습니다. 다시 말해서, EXP_FULL_DATABASE role 을 받은 어떤 사용자도
FULL export 를 할 수 있습니다. 이 role 은 DBA 에 의해서 부여됩니다. 따라서,
여전히 DBA 가 아니면서도 위의 role 을 부여받은 사용자가 있을 수 있습니다.
위의 role 과 동반되는 privilege 들은 CATEXP.SQL 에 정의되어 있습니다.
privilege 들을 살펴보면 이 role 을 소유한 사용자는 DBA 와 거의 같은 역할을
할 수 있음을 알 수 있습니다.
Q> EXPORT 되는 객체들의 순서는 어떻게 됩니까?
▶▶ 오라클7 에서 export 되는 객체들의 순서는 다음과 같습니다. 위에서 아래쪽
으로 row 별로 왼쪽에서 오른쪽 순서로 읽으시면 됩니다.
Tablespaces Profiles Users Roles
System Privilege Role Grants Default Roles Tablespace
Quotas
Resource Costs Rollback Segments Database Links Sequences
(includes grants)
Snapshots Snapshot Logs Job Queues Refresh Groups
(includes grants,
auditing)
Cluster Definitions Tables(constraints, Referential POSTTABLES
grants, indexes, Integrity actions
comments, audits)
In 7.3.4 the order for
tables will be changed
to:(indexes, grants,
constraints, audits,
comments)
Synonyms Views Stored Triggers
Procedures
Default and System
Auditing
Q> 순서가 중요합니까? 만약 그렇다면 왜죠?
▶▶ 순서는 매우 중요합니다. Import 가 데이터베이스에 대한 SQL 문장들을 실행
하는 연속적인 session 이기 때문입니다. 다른 이미 존재하는 어떤 객체들에 의존
하는 몇몇 객체들은 반드시 더 이후에 위치해야 합니다. 예를 들어, 트리거는
테이블에 의존적 객체이므로 테이블이 트리거보다 먼저 import 되어져야 합니다.
또, 프로시져나 뷰같은 홀로 존재할 수 있는 객체들도 있습니다. 이러한 객체들은
compilation errors 과 함께 데이터베이스에 load 될 수 있고, 이는 처음으로 사용
될 때 비로소 validation 이 체크 됩니다.
Q> EXPORT 는 ARRAY FETCH 라 불리우는 메카니즘을 사용하는데, 이게 무엇입니까?
▶▶ Export 는 SELECT 문장을 만들어서 테이블 데이터를 가져옵니다. 즉, 데이터는
데이터베이스로부터 사용자 쪽으로 옮겨져야 하는데, 만약 Export 가 한번에 단
하나의 row 만 가져오게 되어 있다면 데이터베이스를 Export 하기 위해서는 너무
많은 부하가 걸릴 것입니다. 따라서, Export 는 매번 row 들의 집합을 fetch 해오게
되고, 총 수행시간은 감소하게 됩니다. Array fetch 는 데이터베이스로부터 한번에
여러개의 row 들을 가져오는 개념입니다.
Q> EXPORT 시의 BUFFER PARAMETER 는 어떤 목적으로 사용됩니까?
▶▶ 이전에 언급한 바와 같이, Export 는 한번에 여러개의 row 들을 fetch 합니다. 이러한 정보는 화일로 저장되기 이전에 사용자 쪽의 메모리에 올라가게 됩니다.
사용자에게 할당되는 메모리의 용량이 바로 BUFFER parameter 의 값과 대응하게
됩니다.
Q> EXPORT 시의 RECORDLENGTH PARAMETER 는 무엇입니까?
▶▶ Export 시 export 화일로 정보를 쓸때, 한번에 한 글자씩을 써내려가지 않고
버퍼의 정보를 한번에 기록하게 됩니다. RECORDLENGTH 는 이 버퍼의 크기입니다.
O/S 블럭 크기의 배수로 이를 관리하는 것이 가장 효율적입니다.
또, 이는 이전에 설명된 데이터를 가져올 때에만 사용되는 BUFFER parameter 와
종종 혼동됩니다. 두가지 버퍼가 있는 이유는 쓰기 버퍼가 SQL 문장들을 포함할 수
있기 때문입니다. 또한 데이터베이스로부터 자료를 가져올때 이는 export 화일
형태로 format 되어 있지 않습니다. 따라서, 데이터를 올바른 format 형태로 얻을
수 있도록 몇몇 메세지들도 포함되어 있습니다.
Q> 얼마나 많은 ROW 들이 한 주기에서 FETCH 되는 지 어떻게 알 수 있습니까?
▶▶ BUFFER parameter 에서 정의된 것 처럼 이 값은 버퍼의 크기를 한 row 의
크기로 나눔으로써 얻어질 수 있습니다. 한 row 의 크기는 대략 다음과 같습니다.
(sum of all internal columns sizes ) + 4 x (number of columns)
Q> LONG 데이터 타입도 같은 방법으로 작업할 수 있습니까?
▶▶ 아닙니다. LONG 데이터의 경우에는 현재로서는 오로지 한 row 씩의 fetch 만
가능합니다. LONG 데이터 타입은 2GB 까지의 길이를 가질 수 있으므로 위와 같은
방법으로 사용되어지는 것은 바람직하지 않기 때문입니다.
Q> PARALLEL 에서 MULTIPLE EXPORTS 를 할 수 있습니까?
▶▶ incremental exports 가 아니라면 가능합니다. incremental exports 는
dictionary 의 정보를 기록하게 되고, 실행중인 여러개의 session 들이 정보의
충돌을 야기할 것이기 때문입니다.
Q> RECORD PARAMETER 는 무엇입니까?
▶▶ 위 parameter 는 incremental export 에 적용됩니다. incremental export 는
이전의 incremental/cumulative/complete export 중에서 변화가 생긴 객체들만
export 하는 것입니다. 따라서 data dictionary 의 변경 timestamp 가 INCEXP
테이블의 timestamp 와 비교되고, 객체가 export 될때 새로운 timestamp 가 INCEXP
테이블에 반영됩니다.
RECORD=Y 로 정해주시면 INCEXP 테이블의 현 정보가 유지됩니다. 그렇지 않으면
아무런 정보가 남지 않습니다. 다시 말하면 RECORD=N 상태이면 모든 객체들이 export
됩니다. 종종 이 parameter 는 쓰기버퍼나 incremental export 와 관계없는
RECORDLENGTH 와 혼동되기도 합니다.
Q> 테이블의 FLAG 을 "MODIFIED" 로 바꾸는 것들은 어떤 경우입니까?
이는 추가적 INCREMENTAL EXPORT 를 해야함을 의미합니까?
▶▶ INSERT, DELETE, UPDATE 문을 사용하셔서 데이터를 변경하셨다면 객체가 변경
되었다고 나타나게 됩니다. 컬럼을 not null 로 바꾸시거나 storage 를 변경하는
등의 DDL 은 테이블을 변경시키게 됩니다. 심지어 테이블에 grant 나 comment 를
추가하셔도 테이블이 변경되었다고 나타납니다.
Q> 데이터가 EXPORT 될 때의 시점에서 모든 데이터의 일관성이 유지됩니까?
"SNAPSHOT TOO OLD" 에러는 무엇인가요?
▶▶ Export 는 일련의 SELECT 문을 생성함으로 데이터를 가져오게 되고, 각각
테이블 데이터의 snapshot time 이 SELECT 문의 생성 시간과 대응합니다. 만약,
어떠한 데이터 작업도 없다면 이것은 크게 중요하지 않습니다. 그러나, export 가
시작된 후 테이블을 변경시키는 경우가 가능합니다. 그러한 경우에는 데이터의
snapshot 이 중요할 수 있습니다. Export 는 테이블에 exclusive lock 을 걸지
않기 때문입니다.
option 중 CONSISTENCY=Y 라는 것이 있는데, 이 것을 enable 시키면 EXPORT 는
export 를 시작하기 전에 먼저 SET TRANSACTION READ ONLY 명령어를 수행합니다.
그러나, 오랫동안 계속되는 export 의 경우에는 rollback segment 의 공간이
부족해서, "snapshot too old" 에러가 생길 위험이 있습니다.
Q> PRE-TABLE 과 POST-TABLE ACTIONS 은 무엇입니까?
▶▶ pre-table actions 은 테이블이 import 되기 전에 실행되는 PL/SQL
routines 이고, post-table actions 은 모든 테이블들이 import 된후에 실행되는
PL/SQL routines 입니다. 그러므로 프로시져들은 테이블 데이터가 import 된후
변경 작업을 하게 됩니다. 이러한 options 은 사용자들이 실행하길 원하는
routines 을 지정할 수 있도록 앞으로의 release 에서 제공될 것입니다. 이는
import session 중에서 데이터를 변경할 수 있도록 해줄 것입니다.
Q> IMPORT 는 ARRAY INSERTS 를 사용하는데 이것은 어떤 것입니까?
▶▶ Export 가 테이블 데이터를 select 하는 것처럼 import 는 데이터베이스로
다시 데이터를 insert 합니다. 한번에 한 row 를 insert 하는 것은 자원 집약적
입니다. 데이터베이스로 통신하는 횟수는 한번에 여러 row 들을 insert 함으로써
줄일 수 있습니다. 이것이 바로 array insert 의 개념입니다.
Q> LONG 컬럼의 테이블을 IMPORT 할 때 한번에 한 컬럼 씩 INSERT 되는데,
이것이 정상적으로 수행되는 것입니까?
▶▶ 정상입니다. LONG 컬럼에 대해서는 array 크기의 default 는 1 입니다.
Export 는 insert 하기 전에 모든 LONG 컬럼을 올려놓을 연속적인 메모리를 필요로
하기 때문입니다. 또, 적당한 upper bound 를 찾아낼 방법도 없습니다. 장차 LONG
컬럼을 조각조각 insert 하는 데이터베이스의 지원이 이루어 질때 이러한 작업은
변화될 것입니다.
Q> IMPORT BUFFER 는 무엇입니까?
▶▶ 테이블의 rows 이 저장되기 위해서 데이터베이스로 보내기 전에 사용자 쪽에
할당될 메모리의 용량을 지정하는 parameter 입니다.
Q> 각각의 ARRAY INSERT 에 COMMIT 할 수 있습니까?
▶▶ COMMIT=Y 로 지정하시면 가능합니다. 한번의 통신에서 commit 되는 정확한
rows 의 수는 버퍼의 크기와 얼마나 많은 rows 가 해당 버퍼에 저장 되었는 것에
달려있습니다.
Q> RECORDLENGTH PARAMETER 는 무엇입니까?
▶▶ import 는 한 번에 한 글자씩 export 화일로부터 정보를 읽지 않습니다.
대신에 버퍼의 값만큼의 분량의 정보를 메모리로 읽습니다. RECORDLENGTH 는 이
읽기버퍼의 크기입니다. 이를 O/S 블럭 크기의 배수로 유지하는 것이 가장 효율적
입니다. 이 parameter 는 종종 테이블 데이터에만 영향을 미치는 BUFFER parameter
와 혼동되기도 합니다. 테이블 데이터에 나뉘어져 저장된 SQL 문장들이 있어서
데이터가 분리될 필요가 있으므로 또다른 분리된 버퍼들을 가지는 것이 필요합니다.
Q> DESTROY OPTION 은 IMPORT 시에 어떤 역할을 합니까?
▶▶ CREATE TABLESPACE 문은 사용자가 존재하는 데이터 화일을 재사용할 수 있게
하여주는 REUSE 절을 가지고 있습니다. 그러나, 사용자가 다른 테이블스페이스 속한
화일을 실수로 없애버리는 바람직하지 않은 효과를 낼 수도 있으므로 주의해야
합니다. DESTROY=N 으로 import 를 실행하면 CREATE TABLESPACE 문에서 REUSE
절을 사용하지 않게 됩니다.
Q> IMPORT 를 실행 시 "SEALS DON'T MATCH" 라는 메세지를 접하게 됩니다.
SEAL이 어떤 건가요?
▶▶ seal 은 export session 에 대해 정보를 가지고 있는 export 화일 헤더의
또 다른 이름입니다.
Q> IMPORT 를 실행시 "ABNORMAL END OF FILE" 이라는 메세지를 보게 됩니다.
이것이 무슨 의미인가요?
▶▶ 이것은 어떤 이유로 인해서 export 화일이 손상되었음을 의미합니다.
보통 import 는 화일의 특정 포인트를 얻으려 하는데, 만약 화일이 손상되었
다면 import는 아마도 정상적이지 않게 약간 앞쪽에서 찾으려 하게 됩니다.
그 결과 화일이 비정상적으로 끝났다고 생각하게 되는 겁니다.
한쪽 기종에서 다른 기종으로 정상적으로 옮겨지지 않았다면 export 화일은 손상을
입었을 가능성이 있습니다. export 하는 기종에서 다시 한번 화일을 보내도록
하십시오. 또 한가지 화일의 transport protocol 이 binary mode 인지 확인
하시기 바랍니다.
Q> FROMUSER / TOUSER 기능을 사용하고 있는데, TOUSER 수 보다도 FROMUSER 에서
많은 사용자를 지정하고 있습니다. 이 때, 여분의 사용들에게 어떤 일이 생기나요?
▶▶ import 는 적절한 수의 TOUSER 만큼 FROMUSER 수를 mapping 합니다. 여분의
사용자들은 스스로에게 mapping 되므로 시작 시점에서 지정되지 않을 수도
있습니다.
Q> FROMUSER / TOUSER 기능을 사용하고 있는데, FROMUSER 수 보다 많은 TOUSER
수를 사용합니다. 여분의 TOUSER 는 어떻게 됩니까?
▶▶ 그들은 무시되게 됩니다.제품 : ORACLE SERVER
작성날짜 : 2003-11-19
Q> 테이블 LEVEL EXPORT 방법의 종류가 하나 이상 있습니까?
▶▶ 말씀드리자면 대답은 그렇기도 하고 아니기도 합니다. 테이블 export는 두
가지 방법 중 하나가 될 수 있습니다.
--- 사용자가 그 소유한 테이블을 export 한다.
exp donald/duck tables=huey, dewey, louie
--- SYSTEM/MANAGER 같은 DBA가 사용자의 집합에 속해 구분되어진 테이블
들을 export 한다.
exp system/manager tables=scott.emp, humty, dumpty
위의 두가지 export 방법 모두 테이블 level의 export로 구분되어집니다.
후자의 경우에는 export가 DBA에 의해서 행해지기 때문에 import도 DBA에
의해서 행해져야 합니다.
Q> FULL EXPORT 를 받으려면 사용자가 반드시 DBA 이어야 합니까?
▶▶ 아닙니다. 버전 6 에서는 그러했지만, 이는 오라클7 role 의 introduction
에서 바뀌었습니다. 다시 말해서, EXP_FULL_DATABASE role 을 받은 어떤 사용자도
FULL export 를 할 수 있습니다. 이 role 은 DBA 에 의해서 부여됩니다. 따라서,
여전히 DBA 가 아니면서도 위의 role 을 부여받은 사용자가 있을 수 있습니다.
위의 role 과 동반되는 privilege 들은 CATEXP.SQL 에 정의되어 있습니다.
privilege 들을 살펴보면 이 role 을 소유한 사용자는 DBA 와 거의 같은 역할을
할 수 있음을 알 수 있습니다.
Q> EXPORT 되는 객체들의 순서는 어떻게 됩니까?
▶▶ 오라클7 에서 export 되는 객체들의 순서는 다음과 같습니다. 위에서 아래쪽
으로 row 별로 왼쪽에서 오른쪽 순서로 읽으시면 됩니다.
Tablespaces Profiles Users Roles
System Privilege Role Grants Default Roles Tablespace
Quotas
Resource Costs Rollback Segments Database Links Sequences
(includes grants)
Snapshots Snapshot Logs Job Queues Refresh Groups
(includes grants,
auditing)
Cluster Definitions Tables(constraints, Referential POSTTABLES
grants, indexes, Integrity actions
comments, audits)
In 7.3.4 the order for
tables will be changed
to:(indexes, grants,
constraints, audits,
comments)
Synonyms Views Stored Triggers
Procedures
Default and System
Auditing
Q> 순서가 중요합니까? 만약 그렇다면 왜죠?
▶▶ 순서는 매우 중요합니다. Import 가 데이터베이스에 대한 SQL 문장들을 실행
하는 연속적인 session 이기 때문입니다. 다른 이미 존재하는 어떤 객체들에 의존
하는 몇몇 객체들은 반드시 더 이후에 위치해야 합니다. 예를 들어, 트리거는
테이블에 의존적 객체이므로 테이블이 트리거보다 먼저 import 되어져야 합니다.
또, 프로시져나 뷰같은 홀로 존재할 수 있는 객체들도 있습니다. 이러한 객체들은
compilation errors 과 함께 데이터베이스에 load 될 수 있고, 이는 처음으로 사용
될 때 비로소 validation 이 체크 됩니다.
Q> EXPORT 는 ARRAY FETCH 라 불리우는 메카니즘을 사용하는데, 이게 무엇입니까?
▶▶ Export 는 SELECT 문장을 만들어서 테이블 데이터를 가져옵니다. 즉, 데이터는
데이터베이스로부터 사용자 쪽으로 옮겨져야 하는데, 만약 Export 가 한번에 단
하나의 row 만 가져오게 되어 있다면 데이터베이스를 Export 하기 위해서는 너무
많은 부하가 걸릴 것입니다. 따라서, Export 는 매번 row 들의 집합을 fetch 해오게
되고, 총 수행시간은 감소하게 됩니다. Array fetch 는 데이터베이스로부터 한번에
여러개의 row 들을 가져오는 개념입니다.
Q> EXPORT 시의 BUFFER PARAMETER 는 어떤 목적으로 사용됩니까?
▶▶ 이전에 언급한 바와 같이, Export 는 한번에 여러개의 row 들을 fetch 합니다. 이러한 정보는 화일로 저장되기 이전에 사용자 쪽의 메모리에 올라가게 됩니다.
사용자에게 할당되는 메모리의 용량이 바로 BUFFER parameter 의 값과 대응하게
됩니다.
Q> EXPORT 시의 RECORDLENGTH PARAMETER 는 무엇입니까?
▶▶ Export 시 export 화일로 정보를 쓸때, 한번에 한 글자씩을 써내려가지 않고
버퍼의 정보를 한번에 기록하게 됩니다. RECORDLENGTH 는 이 버퍼의 크기입니다.
O/S 블럭 크기의 배수로 이를 관리하는 것이 가장 효율적입니다.
또, 이는 이전에 설명된 데이터를 가져올 때에만 사용되는 BUFFER parameter 와
종종 혼동됩니다. 두가지 버퍼가 있는 이유는 쓰기 버퍼가 SQL 문장들을 포함할 수
있기 때문입니다. 또한 데이터베이스로부터 자료를 가져올때 이는 export 화일
형태로 format 되어 있지 않습니다. 따라서, 데이터를 올바른 format 형태로 얻을
수 있도록 몇몇 메세지들도 포함되어 있습니다.
Q> 얼마나 많은 ROW 들이 한 주기에서 FETCH 되는 지 어떻게 알 수 있습니까?
▶▶ BUFFER parameter 에서 정의된 것 처럼 이 값은 버퍼의 크기를 한 row 의
크기로 나눔으로써 얻어질 수 있습니다. 한 row 의 크기는 대략 다음과 같습니다.
(sum of all internal columns sizes ) + 4 x (number of columns)
Q> LONG 데이터 타입도 같은 방법으로 작업할 수 있습니까?
▶▶ 아닙니다. LONG 데이터의 경우에는 현재로서는 오로지 한 row 씩의 fetch 만
가능합니다. LONG 데이터 타입은 2GB 까지의 길이를 가질 수 있으므로 위와 같은
방법으로 사용되어지는 것은 바람직하지 않기 때문입니다.
Q> PARALLEL 에서 MULTIPLE EXPORTS 를 할 수 있습니까?
▶▶ incremental exports 가 아니라면 가능합니다. incremental exports 는
dictionary 의 정보를 기록하게 되고, 실행중인 여러개의 session 들이 정보의
충돌을 야기할 것이기 때문입니다.
Q> RECORD PARAMETER 는 무엇입니까?
▶▶ 위 parameter 는 incremental export 에 적용됩니다. incremental export 는
이전의 incremental/cumulative/complete export 중에서 변화가 생긴 객체들만
export 하는 것입니다. 따라서 data dictionary 의 변경 timestamp 가 INCEXP
테이블의 timestamp 와 비교되고, 객체가 export 될때 새로운 timestamp 가 INCEXP
테이블에 반영됩니다.
RECORD=Y 로 정해주시면 INCEXP 테이블의 현 정보가 유지됩니다. 그렇지 않으면
아무런 정보가 남지 않습니다. 다시 말하면 RECORD=N 상태이면 모든 객체들이 export
됩니다. 종종 이 parameter 는 쓰기버퍼나 incremental export 와 관계없는
RECORDLENGTH 와 혼동되기도 합니다.
Q> 테이블의 FLAG 을 "MODIFIED" 로 바꾸는 것들은 어떤 경우입니까?
이는 추가적 INCREMENTAL EXPORT 를 해야함을 의미합니까?
▶▶ INSERT, DELETE, UPDATE 문을 사용하셔서 데이터를 변경하셨다면 객체가 변경
되었다고 나타나게 됩니다. 컬럼을 not null 로 바꾸시거나 storage 를 변경하는
등의 DDL 은 테이블을 변경시키게 됩니다. 심지어 테이블에 grant 나 comment 를
추가하셔도 테이블이 변경되었다고 나타납니다.
Q> 데이터가 EXPORT 될 때의 시점에서 모든 데이터의 일관성이 유지됩니까?
"SNAPSHOT TOO OLD" 에러는 무엇인가요?
▶▶ Export 는 일련의 SELECT 문을 생성함으로 데이터를 가져오게 되고, 각각
테이블 데이터의 snapshot time 이 SELECT 문의 생성 시간과 대응합니다. 만약,
어떠한 데이터 작업도 없다면 이것은 크게 중요하지 않습니다. 그러나, export 가
시작된 후 테이블을 변경시키는 경우가 가능합니다. 그러한 경우에는 데이터의
snapshot 이 중요할 수 있습니다. Export 는 테이블에 exclusive lock 을 걸지
않기 때문입니다.
option 중 CONSISTENCY=Y 라는 것이 있는데, 이 것을 enable 시키면 EXPORT 는
export 를 시작하기 전에 먼저 SET TRANSACTION READ ONLY 명령어를 수행합니다.
그러나, 오랫동안 계속되는 export 의 경우에는 rollback segment 의 공간이
부족해서, "snapshot too old" 에러가 생길 위험이 있습니다.
Q> PRE-TABLE 과 POST-TABLE ACTIONS 은 무엇입니까?
▶▶ pre-table actions 은 테이블이 import 되기 전에 실행되는 PL/SQL
routines 이고, post-table actions 은 모든 테이블들이 import 된후에 실행되는
PL/SQL routines 입니다. 그러므로 프로시져들은 테이블 데이터가 import 된후
변경 작업을 하게 됩니다. 이러한 options 은 사용자들이 실행하길 원하는
routines 을 지정할 수 있도록 앞으로의 release 에서 제공될 것입니다. 이는
import session 중에서 데이터를 변경할 수 있도록 해줄 것입니다.
Q> IMPORT 는 ARRAY INSERTS 를 사용하는데 이것은 어떤 것입니까?
▶▶ Export 가 테이블 데이터를 select 하는 것처럼 import 는 데이터베이스로
다시 데이터를 insert 합니다. 한번에 한 row 를 insert 하는 것은 자원 집약적
입니다. 데이터베이스로 통신하는 횟수는 한번에 여러 row 들을 insert 함으로써
줄일 수 있습니다. 이것이 바로 array insert 의 개념입니다.
Q> LONG 컬럼의 테이블을 IMPORT 할 때 한번에 한 컬럼 씩 INSERT 되는데,
이것이 정상적으로 수행되는 것입니까?
▶▶ 정상입니다. LONG 컬럼에 대해서는 array 크기의 default 는 1 입니다.
Export 는 insert 하기 전에 모든 LONG 컬럼을 올려놓을 연속적인 메모리를 필요로
하기 때문입니다. 또, 적당한 upper bound 를 찾아낼 방법도 없습니다. 장차 LONG
컬럼을 조각조각 insert 하는 데이터베이스의 지원이 이루어 질때 이러한 작업은
변화될 것입니다.
Q> IMPORT BUFFER 는 무엇입니까?
▶▶ 테이블의 rows 이 저장되기 위해서 데이터베이스로 보내기 전에 사용자 쪽에
할당될 메모리의 용량을 지정하는 parameter 입니다.
Q> 각각의 ARRAY INSERT 에 COMMIT 할 수 있습니까?
▶▶ COMMIT=Y 로 지정하시면 가능합니다. 한번의 통신에서 commit 되는 정확한
rows 의 수는 버퍼의 크기와 얼마나 많은 rows 가 해당 버퍼에 저장 되었는 것에
달려있습니다.
Q> RECORDLENGTH PARAMETER 는 무엇입니까?
▶▶ import 는 한 번에 한 글자씩 export 화일로부터 정보를 읽지 않습니다.
대신에 버퍼의 값만큼의 분량의 정보를 메모리로 읽습니다. RECORDLENGTH 는 이
읽기버퍼의 크기입니다. 이를 O/S 블럭 크기의 배수로 유지하는 것이 가장 효율적
입니다. 이 parameter 는 종종 테이블 데이터에만 영향을 미치는 BUFFER parameter
와 혼동되기도 합니다. 테이블 데이터에 나뉘어져 저장된 SQL 문장들이 있어서
데이터가 분리될 필요가 있으므로 또다른 분리된 버퍼들을 가지는 것이 필요합니다.
Q> DESTROY OPTION 은 IMPORT 시에 어떤 역할을 합니까?
▶▶ CREATE TABLESPACE 문은 사용자가 존재하는 데이터 화일을 재사용할 수 있게
하여주는 REUSE 절을 가지고 있습니다. 그러나, 사용자가 다른 테이블스페이스 속한
화일을 실수로 없애버리는 바람직하지 않은 효과를 낼 수도 있으므로 주의해야
합니다. DESTROY=N 으로 import 를 실행하면 CREATE TABLESPACE 문에서 REUSE
절을 사용하지 않게 됩니다.
Q> IMPORT 를 실행 시 "SEALS DON'T MATCH" 라는 메세지를 접하게 됩니다.
SEAL이 어떤 건가요?
▶▶ seal 은 export session 에 대해 정보를 가지고 있는 export 화일 헤더의
또 다른 이름입니다.
Q> IMPORT 를 실행시 "ABNORMAL END OF FILE" 이라는 메세지를 보게 됩니다.
이것이 무슨 의미인가요?
▶▶ 이것은 어떤 이유로 인해서 export 화일이 손상되었음을 의미합니다.
보통 import 는 화일의 특정 포인트를 얻으려 하는데, 만약 화일이 손상되었
다면 import는 아마도 정상적이지 않게 약간 앞쪽에서 찾으려 하게 됩니다.
그 결과 화일이 비정상적으로 끝났다고 생각하게 되는 겁니다.
한쪽 기종에서 다른 기종으로 정상적으로 옮겨지지 않았다면 export 화일은 손상을
입었을 가능성이 있습니다. export 하는 기종에서 다시 한번 화일을 보내도록
하십시오. 또 한가지 화일의 transport protocol 이 binary mode 인지 확인
하시기 바랍니다.
Q> FROMUSER / TOUSER 기능을 사용하고 있는데, TOUSER 수 보다도 FROMUSER 에서
많은 사용자를 지정하고 있습니다. 이 때, 여분의 사용들에게 어떤 일이 생기나요?
▶▶ import 는 적절한 수의 TOUSER 만큼 FROMUSER 수를 mapping 합니다. 여분의
사용자들은 스스로에게 mapping 되므로 시작 시점에서 지정되지 않을 수도
있습니다.
Q> FROMUSER / TOUSER 기능을 사용하고 있는데, FROMUSER 수 보다 많은 TOUSER
수를 사용합니다. 여분의 TOUSER 는 어떻게 됩니까?
▶▶ 그들은 무시되게 됩니다. -
Export Import single table...
Gurus...
I am working on this single table which needs to be exported from prod and import into test.
As I understand I need to follow below steps:
1. Test - export table abc dump as backup
2. Prod - Export single table abc
3. Test - Drop table abc cascade constraints
4. Test - Import abc into test
Export par file:
Directory= dbpump
dumpfile= expdp_abc.dmp
logfile= expdp_abc.log
content= all
tables=user.abc
exclude=statistics,object_grant, tablespace_quota
flashback_time= systimestamp
Import par file:
Directory= dbpump
dumpfile= expdp_abc.dmp
logfile= impdp_abc.log
content= all
tables=user.abc
table_exist_action=replace
transform=segment_attributes:N
my doubts:
1. Is my process flow correct?
2. Export & Import file correct? or missing parameters?
3. What happens to all objects connected to the table, will that also imported?
4. Do I need to lock user during this process?
5. Any script to check whether all objects connected to table does exist in test after import?Hi,
Process for table export & import.
+1. Create database directory in test as well as production:-+
--> create or replace directory directory_name as 'physical_path';
--> grant acsess on that directory to user.
+2. Backp table in test environment (in case if you need old data in your test env):-+
--> Create table BKP_table_name as select * from table_name; (table_name u want to import)
+3. Take Export backup in Production database:-+
--> expdp dumpfile=file_name.dmp logfile=file_name.log directory=directory_name tables=Owner.table_name
+4. On test server do the following actvity:-+
a. Just check for dependencies on that table using DBA_DEPENDENCIES.
b. Truncate table which u want to import
c. import table-
impdp dumpfile=file_name.dmp tables=owner.table_name logfile=file_name_imp.log directory=directory_name table_exists_action=APPEND
d. Just check for dependencies on that table using DBA_DEPENDENCIES.
And also you can use table_exists_action=replace
This will also import all depedent objects to the table..
Regards,
Edited by: XBOX on Dec 14, 2012 10:15 PM -
Export-Import and Naming convention question
All,
Newbie here. Have a question related to the naming convention for SAP R/3 system and XI manual export/import process. We are currently in the development environment where our R/3 systems are named as D55CLNT400, D56CLNT300 etc (first 3 characters are the system id, and last 3 are the client number.) This is per the XI best practices convention.
The question i have is - if we name the technical system as above - and export the configuration objects from the Dev to Test environment - where the R/3 systems are named as T55CLNT400, T56CLNT300 (similar naming structure). Does it mean that we need to manually change almost all of the items in the Test environment on the configuration side (like business sytem name, interface determination, receiver determination etc)
Is this the correct way or are we missing something??? I would have preferred a way - where we needed to only update the communication channel parameters.
Thanks.
Message was edited by:
thezoneIn the SLD, create three Business System Groups: DEV, QAS and PRD.
In each of these groups, you must have the relevant application servers (in your case, R/3s) and one integration server (XI).
Then, for each Business System in Group DEV, define a transport target in QAS group.
In your case, the transport landscape should be like this:
D55CLNT400 -> T55CLNT400
D56CLNT300 -> T56CLNT300
XI_DEV -> XI_QAS
Do the same for the QAS group (defining transport targets in PRD group). Observe that you need to have the same number of Business Systems in each group for this to work properly.
Now, when you transport your configuration objects from XI_DEV to XI_QAS, all the Business Systems in DEV landscape will be replaced for the equivalent ones in QAS landscape.
More info: http://help.sap.com/saphelp_nw2004s/helpdata/en/ef/a21e3e0987760be10000000a114084/frameset.htm
Regards,
Henrique. -
Export & import of sap sid schema for building a new system
Hi,
We have a quality BW system which runs on HANA SPS07 (Revision 73). The database contains many schemas in addition to sap<sid>, the rest of the schemas are used through native HANA and are very huge.
We are planning to build a new test BW system by system copy method from quality BW systems. We dont want the export/import of entire database as it will take a long time because of huge native HANA schemas, also the schemas other than sap<sid> are not required in the target. Please let me know how to copy only the sap<sid> schema to the new database.
Thanks & Regards,
SaravananHi Saravanan,
Try with rigth clic on schema -> Export,
Select CSV format, choose a directory.
And for import the schema use the follow query:
import "old_schema"."*" as CSV from 'Directory' with replace threads 10 rename schema "old_schema" to "NEW_schema_name";
Regards.
Ferando. -
Procedure names in lowercase (export/import)
After an export/import into a new schema all package/procedure/function names are written in uppercase and within ". The rule in our norms and standards defines to write object names in lowercase. Is there a solution to keep object names in lowercase and without "?
We work with Oracle 10gR2 and developer tool Toad!
Example:
before import --> CREATE OR REPLACE PROCEDURE p_to_bk_trans_multiversa
after import --> CREATE OR REPLACE PROCEDURE "P_TO_BK_TRANS_MULTIVERSA"
The name of the object is now written in uppercase.
Edited by: user7535259 on Apr 13, 2010 11:36 PMHi,
I remember an issue where DataPump was no preserving the spacing and <cr> in functions, procedures, and packages, but I don't remember an issue where it was upcasing the name. I just checked with 11.2 and it seems to work fine. I created 2 functions:
create function foo (a number) return number is
begin
if a > 0 then
return 10;
else
return 100;
end if;
end;
create or replace function "foo" (a number) return number is
begin
if a > 0 then
return 10;
else
return 100;
end if;
end;
Then ran export/import to sqlfile and got this:
CREATE function foo (a number) return number is
begin
if a > 0 then
return 10;
else
return 100;
end if;
end;
CREATE function "foo" (a number) return number is
begin
if a > 0 then
return 10;
else
return 100;
end if;
end;
So, it looks like it has been fixed in 11.2. I'm not sure if there is a patch available for your release, but you could contact Oracle Support to see.
Dean -
I export/import the same Contacts for mass editing in Access. No matter whether I use csv, tab or text, I lose the formatting of the notes when I import them back into Palm Desktop.
I'm beginning to believe that Palm destroys note formatting upon import. I understand that Excel itself destroys all formatting within a cell and, therefore, is a poor choice for exporting/importing if one has long formatted notes. But with Access, I wasn't using Excel during export nor import.
Has anyone ever exported/imported the same contact and maintained the note formatting? Is so, what did you use and how did you do it.
Post relates to: Treo 680 (Unlocked GSM)Same thing happens to me and here is what I discovered: Either Hotsync or Palm Desktop 4.1.4 destroys formatting of memos (or contacts export). Here is how I found this: I created a memo from an application in my palm with tab delimitations between each fields. I check the memo in my palm and everything is ok. I Hotsync, got to my memo in Palm Desktop, Copy the memo, and try to paste in Excel. Bam! Not working. After trying multiple ways to do that, I copied the same memo in Word and forced to view the invisible characters. Bam! (again ;-)) No more tabs. All tabulations were replaced with 4 or 5 spaces. No wonder why I could not paste in Excel. The older version of Palm Desktop did not have this problem. To make sure that my memo was fine from the get go, I beamed (IrDA) it directly to my laptop (wich is equipped with IrDA) and copy-pasted the same memo in Excel. Voila! It worked.
So either it is the Hotsync or Palm Desktop that ruins formatting.
I tried this with my very old PalmPilot Personnal and my brand new Palm TX. -
Export\Import WSUS Updates
Hi
I have a Q about export\import process in WSUS(3.2).
I have a primary WSUS server that I`ve exported all updates from and imported all updates to a disconnected
WSUS server.
now I have some new updates that I need to export and import.
my question is, do I need to export all files again? or do I have any option to do an incremental export or
something like that?
Hope you understand me..
Thank you!I`m talking about the wsusutil export\import process..
Oh! That's NOT what you asked. What you asked is:
my question is, do I need to export all files again?
As for the WSUSUTIL functionality, that is an ALL or NOTHING operation. You have no choice in the matter.
Lawrence Garvin, M.S., MCSA, MCITP:EA, MCDBA
SolarWinds Head Geek
Microsoft MVP - Software Packaging, Deployment & Servicing (2005-2014)
My MVP Profile: http://mvp.microsoft.com/en-us/mvp/Lawrence%20R%20Garvin-32101
http://www.solarwinds.com/gotmicrosoft
The views expressed on this post are mine and do not necessarily reflect the views of SolarWinds. -
Maxl to export/import partition xml
I have searched thru the tech ref at all the Maxl commands and I'm not seeing what I'm looking for.
Is there a way to automate thru maxl (or esscmd) the exporting and importing of the xml file for partitions?
TIA,
RobertIs that the only option?
I've already seen the result of
display partition appname.dbname advanced
and it doesn't seem very friendly as an input file. Looks like much parsing and chopping would need to be done in order to get what I need as input to
create or replace partition command.
So the answer to my question about maxl for exporting/importing the xml version of partition is "no"?
Maybe you are looking for
-
On windows 7 pro, how do i add firefox bookmarks to the start menu?
On Windows 7 professional, how do I add firefox bookmarks to the start menu so I can access my bookmarks without opening firefox first?
-
Problem with IMPORT FROM DATABASE
Hello Members, I have a program which reads content of INDX table (cluster table) using IMPORT tab = lt_ccris1 FROM DATABASE indx(xa) TO wa_indx CLIENT sy-mandt ID 'DETAILLIST'. sy-subrc return is 0. But internal table lt_ccris1 is not populate
-
Whenever, I click on "Listen Live" at dpr.org (Dayton Public Radio), I get this error message. "Error opening movie: Movie could not be opened" My Quicktime works at other sites. I have tried everything that I know, to no avail.
-
Difference between 6.1 and 7.0
I am needing documentation of the difference between coldfusion 6.1 and 7. If you could show me to a website that shows this or tell me the difference that would be great. I need the lists of code that is different. Thanks
-
Help: cannot retrieve old files from Time Machine backup on new computer!
I backed up my old Macbook Pro for several months. I've got a new Macbook Pro and I succeeded to restore the last content of the old one using the migration assistant. However, now I need some older files that I know are in the backup, but I can't re