Oracle
- SQL*Plus
- tnsnames.ora
- 表ロックの解除
- テーブルスペースの確認
- テーブルスペースの物理ファイルの確認
- テーブルスペースの削除
- ユーザの一覧
- ユーザの削除
- systemユーザーのパスワード変更
- 日付の表示形式
- Dateカラムの条件指定
- MS-DOSプロンプトの文字コード
- データベースのバックアップ(exp)
- データベースの復元(imp)
- SQLトレースログの採取
- テーブルの削除(DROP)
- リスナーの起動確認
- リスナーの状態確認
- サービスネームの確認
- Create tableのDDLを確認
- インデックスの確認
- インデックスの削除
- インデックス名の変更
SQL*Plus
ユーザー | system |
---|---|
パスワード | password |
ネットサービス名 | NS073 |
tnsnames.oraで定義した文字列を指定します。
1ページの行数を指定
0を指定するとページの区切りがなくなります。
1行の長さを指定
列の区切り文字の指定
右は時のスペースを削除する指定
tnsnames.ora
◆記述例(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = {ホスト名 or IPアドレス})(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = {サービス名})
) )
サービス名はOracleサーバのグローバルデータベース名を指定します。
表ロックの解除
WHERE SID IN (
SELECT SID FROM V$LOCK
WHERE TYPE IN ('TM','TX')
)
このSQLの結果をkillします。
SQL文まで確認したい場合、v$sqltextをjoinします。
JOIN v$sqltext vt
ON vs.sql_address = vt.address
AND vs.sql_hash_value = vt.hash_value
WHERE vs.SID IN (
SELECT SID FROM V$LOCK
WHERE TYPE IN ('TM','TX')
)
参考:Oracleロック解除
テーブルスペースの確認
TABLESPACE_NAME
------------------------------------------------------------
SYSTEM
SYSAUX
UNDOTBS1
TEMP
USERS
TS073
6行が選択されました。
テーブルスペースの物理ファイルの確認
SQL> set line 100
SQL> column tablespace_name format a15
SQL> column file_name format a50
SQL> select tablespace_name,file_name,bytes from dba_data_files;
TABLESPACE_NAME FILE_NAME BYTES
--------------- ------------------------------ ----------
USERS C:\ORACLE...\USERS.DBF 104857600
SYSAUX C:\ORACLE...\SYSAUX.DBF 796917760
UNDOTBS1 C:\ORACLE...\UNDOTBS1.DBF 398458880
SYSTEM C:\ORACLE...\SYSTEM.DBF 387973120
G01 C:\ORACLE...\G01.DBF 2197815296
テーブルスペースの削除
テーブルスペースとテーブルスペースに紐付くデータファイルを削除します。
ユーザーの一覧
ユーザーの一覧を表示します。
USERNAME
------------------------------------------------------------
TS073
SCOTT
:
ユーザーの削除
ユーザーとユーザーに紐付くオブジェクトを削除します。
systemユーザーのパスワード変更
systemユーザーのパスワードをoracleに変更します。
日付の表示形式
TO_CHARを使って日付の書式を指定します。
;
TO_CHAR(entry_dttm,
-------------------
2013-06-20 02:26:36
2013-06-20 16:33:39
2行が選択されました。
毎回同じ書式で表示したい場合、NLS_DATE_FORMATで書式を指定すると便利です。
セッションが変更されました。
Dateカラムの条件指定
TO_DATEを使って日付の書式を指定します。
2014/07/29','YYYY/MM/DD');
typ COU
--- ---
A01 1
A02 234
B01 18
3行が選択されました。
MS-DOSプロンプトの文字コード
> SET NLS_LANG=AMERICAN_AMERICA.UTF8
データベースのバックアップ(exp)
expコマンドでTS073データベースをTS073.dmpというファイルにバックアップします。
expコマンドは次の場所にありました。
exp/impはOracleデータベースをインストールするとインストールされるようです。 Oracleクライアントの場合は、管理者を指定するかカスタムで指定するとインストールされるようです。
テーブルを指定してエクスポート
AME)
データベースの復元(imp)
expコマンドでバックアップをとったTS073.dmpというファイルをインポートします。 ユーザーはexpのときはTS073で、インポートするときはTS055にしました。
SQLトレースログの採取
トレースログの出力先を確認
SQL> show parameter user_dump_dest
NAME TYPE VALUE
-------------- ------ --------------------------
user_dump_dest string C:\oracle\admin\TS01\udump
トレースログの出力を有効にする
alter system set sql_trace=true
*
ERROR at line 1:
ORA-02095: specified initialization parameter cannot be modified
エラーが出ました。どうやらインスタンス起動中に sql_traceパラメータは変更できないようです。 scope=spfile を指定して、インスタンス再起動後に有効になるように指定します。
System altered.
Windowsのサービスを開き「OracleServiceTS01」を再起動したところ、ログが出力されるようになりました。
トレースログの出力を無効にする
System altered.
テーブルの削除(DROP)
リスナーの起動確認
TNS Ping Utility for 32-bit Windows: Version 11.2.0.2.0 - Production on
21-11月-2016 11:03:04
Copyright (c) 1997, 2010, Oracle. All rights reserved.
パラメータ・ファイルを使用しました:
C:\oraclexe\app\oracle\product\11.2.0\server\network\admin\sqlnet.ora
エイリアスを解決するためにHOSTNAMEアダプタを使用しました。
(DESCRIPTION=(CONNECT_DATA=(SERVICE_NAME=))(ADDRESS=(PROTOCOL=TCP)(HOST
=127.0.0.1)(PORT=1521)))に接続の試行中
OK (0ミリ秒)
リスナーの状態確認
LSNRCTL for 32-bit Windows: Version 11.2.0.2.0 - Production on 21-11月-
2016 11:08:41
Copyright (c) 1991, 2010, Oracle. All rights reserved.
(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))に接続中
リスナーのステータス
------------------------
別名 LISTENER
バージョン TNSLSNR for 32-bit Windows: Version 11.2.0.2.
0 - Production
開始日 21-11月-2016 10:53:16
稼働時間 0 日 0 時間 15 分 25 秒
トレース・レベル off
セキュリティ ON: Local OS Authentication
SNMP OFF
デフォルト・サービス XE
パラメータ・ファイル C:\oraclexe\app\oracle\product\11.2.0\server\
network\admin\listener.ora
ログ・ファイル C:\oraclexe\app\oracle\diag\tnslsnr\MyPC\list
ener\alert\log.xml
リスニング・エンドポイントのサマリー...
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(PIPENAME=\\.\pipe\EXTPROC1ipc)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=MyPC)(PORT=1521)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=MyPC)(PORT=8080))(Presentat
ion=HTTP)(Session=RAW))
サービスのサマリー...
サービス"CLRExtProc"には、1件のインスタンスがあります。
インスタンス"CLRExtProc"、状態UNKNOWNには、このサービスに対する1件の
ハンドラがあります...
サービス"PLSExtProc"には、1件のインスタンスがあります。
インスタンス"PLSExtProc"、状態UNKNOWNには、このサービスに対する1件の
ハンドラがあります...
サービス"XEXDB"には、1件のインスタンスがあります。
インスタンス"xe"、状態READYには、このサービスに対する1件のハンドラが
あります...
サービス"xe"には、1件のインスタンスがあります。
インスタンス"xe"、状態READYには、このサービスに対する1件のハンドラが
あります...
コマンドは正常に終了しました。
サービスネームの確認
LSNRCTL for 32-bit Windows: Version 11.2.0.2.0 - Production on 21-11月-
2016 11:13:04
Copyright (c) 1991, 2010, Oracle. All rights reserved.
(DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))に接続中
サービスのサマリー...
サービス"CLRExtProc"には、1件のインスタンスがあります。
インスタンス"CLRExtProc"、状態UNKNOWNには、このサービスに対する1件の
ハンドラがあります...
ハンドラ:
"DEDICATED" 確立:0 拒否:0
LOCAL SERVER
サービス"PLSExtProc"には、1件のインスタンスがあります。
インスタンス"PLSExtProc"、状態UNKNOWNには、このサービスに対する1件の
ハンドラがあります...
ハンドラ:
"DEDICATED" 確立:0 拒否:0
LOCAL SERVER
サービス"XEXDB"には、1件のインスタンスがあります。
インスタンス"xe"、状態READYには、このサービスに対する1件のハンドラが
あります...
ハンドラ:
"D000" 確立:0 拒否:0 現行:0 最大:1022 状態:ready
DISPATCHER <machine: MyPC, pid: 5208>
(ADDRESS=(PROTOCOL=tcp)(HOST=MyPC)(PORT=49182))
サービス"xe"には、1件のインスタンスがあります。
インスタンス"xe"、状態READYには、このサービスに対する1件のハンドラが
あります...
ハンドラ:
"DEDICATED" 確立:0 拒否:0 状態:ready
LOCAL SERVER
コマンドは正常に終了しました。
確立が0以外の出力例です。
インスタンス"ts012"、状態READYには、このサービスに対する1件のハンドラ
があります...
ハンドラ:
"DEDICATED" 確立:734 拒否:0 状態:ready
LOCAL SERVER
Create tableのDDLを確認
set pagesize 200
select dbms_metadata.get_ddl('TABLE', 'tablename') from dual;
インデックスの確認
dba_indexesをテーブル名で検索します。
INDEX_NAME
---------------
PK_TRN_BILL
UX1_TRN_BILL
UX1_TRN_BILL1
確認したいindexがテーブルのどのカラムを使っているか検索します。
BILL';
COLUMN_NAME
------------
BRNCH_CODE
BILL_NMBR
インデックスの削除
Index dropped.
インデックス名の変更
Index altered.
Copyright (C) 2013 - 2023 ymlib.com