RSS ITサイト動画新着

Oracleコマンド備忘

※IT系の記事は当方環境での実施内容となるため実施する場合は自己責任でお願いいたします。

CDB,PDBの確認

sqlplus / as sysdba

SQL> select instance_name, status from v$instance;

INSTANCE_NAME                    STATUS
-------------------------------- ------------------------
xe                               OPEN


SQL> show pdbs;

    CON_ID CON_NAME                       OPEN MODE  RESTRICTED
---------- ------------------------------ ---------- ----------
         2 PDB$SEED                       READ ONLY  NO
         3 XEPDB1                         READ WRITE NO

db_unique_nameの確認

SQL>show parameter db_unique_name;

NAME                                 TYPE
------------------------------------ ----------------------
VALUE
------------------------------
db_unique_name                       string
XE

ユーザー作成

CREATE USER user_name IDENTIFIED BY "password";

ディレクトリ作成

CREATE DIRECTORY dir_name AS 'C:\temp_dir';

ディレクトリへの権限付与

grant read,write on directory dir_name to user_name;

ユーザーのパスワード変更

ALTER USER user_name IDENTIFIED BY password;

XEの初期プラカブルDBへの接続

sqlplus user_name/XXXXXXXX@//localhost:1521/XEPDB1 as sysdba

テーブル作成

CREATE TABLE examples(
ID NUMBER(10,0) PRIMARY KEY,
NAME VARCHAR2(64),
created DATE
);

データインサート

INSERT INTO examples(id,name,created) VALUES(1,'ヨシヒコ',SYSDATE);
INSERT INTO examples(id,name,created) VALUES(2,'メレブ',SYSDATE);

テーブルスペースの作成

CREATE TABLESPACE sample_space
DATAFILE 'C:\temp_dir\data\demo.dbf' SIZE 100M
AUTOEXTEND ON NEXT 500K MAXSIZE 1024M;

expdp/impdp

expdp user_name/xxxxxx@//localhost:1521/XEPDB1 DIRECTORY=dir_name DUMPFILE=examples.dmp LOGFILE=examples.log TABLES=examples
impdp user_name/xxxxxx@//localhost:1521/XEPDB1 DIRECTORY=dir_name DUMPFILE=examples.dmp LOGFILE=examples.log TABLES=examples TABLE_EXISTS_ACTION=TRUNCATE
impdp user_name/xxxxxx@//localhost:1521/XEPDB1 DIRECTORY=dir_name DUMPFILE=examples.dmp LOGFILE=examples.log TABLES=examples TABLE_EXISTS_ACTION=REPLACE

impdpの TABLE_EXISTS_ACTION=の違い

TABLE_EXISTS_ACTION=

TRUNCATE⇒テーブルのデータ(行)が削除されてデータが置き換えられる
APPEND⇒既存のデータに追加される
SKIP⇒インポートされず、何も変化なし
REPLACE⇒テーブル自体を削除した後、データが置き換えられる 表以外のビューやパッケージといったオブジェクトはreplaceされない

TRUNCATEやREPLACEですでにオブジェクトが存在していて、ORA-31684が出る場合はテーブルをDROPしてから再作成する。

 

sqlplusでsysdba権限で接続する(直接接続)

sqlplus sys/password@//XXX.xxx.xxx.xxx:1521/XE as sysdba

sqlplusでSQLファイルを実行

sqlplus user_name/xxxxxx@//localhost:1521/XEPDB1 @C:\temp\sample.sql

sqlファイル内のspool文に日本語のフォルダ名を指定すると、化けてしまいspoolに失敗するので注意。

 

 

【PR】最近楽天で購入した商品

お手頃な値段で楽しめるが、なかなか真っすぐ飛ばせるようにならない。。。【レビュー投稿で1年保証】 X-COM スポーツディスク アルティメット フライング スタンダード ディスク 競技用 正規品 17 [...]

ipv6(クロスパス対応)だと接続するだけで使えるのは超絶便利。うちの場合は工事をしている間にipv6で繋がるようになりました。NEC PA-WX1500HP 無線LANルータ Aterm ブラック価 [...]

子供が児童館に置いてあったおもちゃでみて気に入って、欲しいとのことで購入。大人もぼーと見てられて、なかなか良い。【期間限定ポイントUP】日本製 【 オフィス弥生 】 プレイタイマー 1個 【 水車 タ [...]

Tips

Posted by admin