底辺SEの備忘録

スキル無しの底辺です。参考になりません。

Oracle

シェルスクリプトの中でsqlplusを実行

内容 ユーザ名(第1引数)、パスワード(第2引数)を渡し、test.sqlを10秒ごとに10回実行する。 #/bin/bash username="$1" password="$2" SLEEP_TIME=10 MAX_LOOP_COUNT=10 LOOP_COUNT=0 script_file="test.sql" while [ $LOOP_COUNT -lt $MAX_LOOP_COUNT ] do c…

OracleのPK削除時の挙動について

概要 OracleのPK削除時の挙動について確認しました。 確認内容 CREATE TABLE文でPK付のテーブルを作成します。 SQL> CREATE TABLE TEST.TEST0722 2 ( 3 COL1 NUMBER, 4 COL2 NUMBER, 5 CONSTRAINT TEST0722_PK PRIMARY KEY( COL1 ) 6 ); 表が作成されました…

select文の中でSQL文も組み立てる

方法 連結演算子||を使用する。 シングルコーテーションは、シングルコーテーションでエスケープする。 例 あんまりないと思いますが、1行ずつdelete文を組み立てたいとき SQL> select * from test.test_0615; COL1 COL2 -------- -------- aaaa bbbb cccc b…

OracleでSYSDBA権限を持つユーザを確認する方法

V$PWFILE_USERSで確認することが可能 表示例 SQL> select username,sysdba from V$PWFILE_USERS; USERNAME SYSDBA ------------------------------ ---------- SYS TRUE SYSDG FALSE SYSBACKUP FALSE SYSKM FALSE SQL> 参考 V$PWFILE_USERSは、パスワード・…

特定の列名が存在する(しない)テーブルの一覧を表示するSQL(Oracle版)

概要 Oracleで特定の列名が存在するテーブル(しない)の一覧を表示するSQL 方法 以下で取得可能と思われる。。。 TESTスキーマ内の列名COL1が存在するテーブルを抽出 SELECT TABLE_NAME FROM DBA_TABLES A WHERE OWNER='TEST' AND EXISTS(SELECT 'X' FROM DBA…

パーティション表の情報を確認する

概要 作成したパーティション表の パーティションタイプ パーティション名 パーティションキー HIGH_VALUE を確認したので備忘 方法 以下で可能 データディクショナリビューの名前が紛らわしいですね。。。 SQL> select 2 t.table_name,t.partitioning_type,…

bigfile表領域を作成する

概要 bigfileで表領域を作成したので備忘 方法 SQL> create bigfile tablespace bigtbs datafile '/u01/app/oracle/oradata/cdb1/orclpdb1/bigtbs01.dbf' size 50M; 表領域が作成されました。 ---表領域の確認 SQL> select f.FILE_NAME,f.BYTES/1024/1024 as…

データベースのデフォルト表領域を確認・変更する

概要 「データベース」のデフォルト表領域を確認・変更したので備忘 方法 database_propertiesで確認可能 SQL> col PROPERTY_NAME for a30 SQL> col PROPERTY_VALUE for a30 SQL> select PROPERTY_NAME,PROPERTY_VALUE from database_properties 2 where PRO…

v$sessionで実行中のSQLのsqlidを確認する

概要 v$sessionの情報を元に実行中のsqlidを確認したので備忘 方法 select program,sql_id from v$session where sql_id is not null and type='USER'で確認可能 type='USER'とすることでユーザプロセスに絞っています。 SQL> select program,sql_id from v$…

Redoログのグループ追加とメンバーの追加

概要 Oracle(12cR1)のRedoログのグループ追加とメンバーの追加を マニュアルを参考にして実施したので備忘 現在のRedoログのグループ,メンバー,サイズを確認 SQL> select l.group#,f.member,l.bytes/1024/1024 as MB from v$logfile f,v$log l 2 where l.gro…

Oracleの制御ファイルの多重化

概要 Oracle(12c)での制御ファイルの多重化の手順を確認したので備忘 参考マニュアル 10.3.2 制御ファイルの追加コピーの作成、名前変更および再配置 実施手順 初期化パラメータ(spファイルの場所と制御ファイルの場所)を確認 SQL> show parameter control_f…

Oracleでグローバルデータベース名を確認する

概要 Oracleでグローバルデータベース名を確認する方法を備忘として残します 方法 GLOBAL_NAMEビューで確認可能 SQL> desc global_name 名前 NULL? 型 ----------------------------------------- -------- ---------------------------- GLOBAL_NAME VARCHA…

マルチテナント構成で環境を確認するために使用したコマンド

概要 Oracleのマルチテナント構成で環境を確認するために使用したコマンドを 備忘として残します 接続しているコンテナの表示 show con_nameで確認 SQL> show con_name CON_NAME ------------------------------ CDB$ROOT SQL> PDBの情報を表示 show pdbsで…

Oracleで権限周りを確認する時によく使用するデータディクショナリビュー

概要 Oracleでユーザやロールに与えられた権限を確認する時に参照する データディクショナリビューについてよく分かっていないので備忘 dba_role_privs ユーザやロールに付与されたロールを確認 事前に定義されたRESOURCEロールに付与されたロールを確認 SQL…