ソース掲示板




すべてから検索

キーワード   条件 表示 現行ログ 過去ログ トピックス 名前 本文
Oracle Database 10g Express Edition インストール
日時: 2013/05/10 11:05
名前: lightbox



↓ダウンロードページ( リンク先は、現在 11g )
http://www.oracle.com/technology/software/products/database/xe/index.html





























メンテナンス

ごみ箱を使用しない ( No.1 )
日時: 2009/02/21 18:55
名前: lightbox


日時: 2009/02/21 18:55
名前: lightbox
XE 限定では無く、Oracle 10g の仕様。
とりあえず、使い道が発生するまで以下の処理を行いましょう

ALTER SYSTEM SET RECYCLEBIN = OFF
↓妙なテーブルはこうして消します PURGE RECYCLEBIN ごみ箱機能により生成されたオブジェクトにアクセスしようとしたことによるエラー
このアーティクルの参照用URLをクリップボードにコピー メンテナンス
【サービスの起動について】 -- Oracle 10g ( No.2 )
日時: 2008/04/19 10:37
名前: lightbox
データベースとして最低限必要なサービスは、TNSListener と OracleService のみです。
( Oracle 10g Express Edition では これだけで WEB ベースが動きます )

他のサービスは、WEB ベースのツールを使用する為に必要ですが、
他のツールを使うのであれば必要ではありません。( 例 : コマンドプロンプトで実行する sqlplus.exe )
正式版ですと、サービス起動するだけですぐ接続できるんですが、 XE では、oradim.exe というプログラムでインスタンスを起動する必要があるようです。 ばっと見でまだ解りませんが、複数インスタンスにこれで対処するのでしょうか。 プログラムメニューに登録されているバッチファイルは以下のようになっています
net start OracleXETNSListener
net start OracleServiceXE
@oradim -startup -sid XE -starttype inst > nul 2>&1
↓oradim.exe のコマンドラインの説明
ORADIM: <command>[options]です。マニュアルを参照してください。
次のコマンドの1つを入力:
次のオプションを指定してインスタンスを作成します:
     -NEW -SID sid | -SRVC srvc | -ASMSID sid | -ASMSRVC srvc [-SYSPWD pass]
 [-STARTMODE auto|manual] [-SRVCSTART system|demand] [-PFILE file | -SPFILE]
 [-SHUTMODE normal|immediate|abort] [-TIMEOUT secs] [-RUNAS osusr/ospass]
次のオプションを指定してインスタンスを編集します:
     -EDIT -SID sid | -ASMSID sid [-SYSPWD pass]
 [-STARTMODE auto|manual] [-SRVCSTART system|demand] [-PFILE file | -SPFILE]
 [-SHUTMODE normal|immediate|abort] [-SHUTTYPE srvc|inst] [-RUNAS osusr/ospass]
次のオプションを指定してインスタンスを削除します:
     -DELETE -SID sid | -ASMSID sid | -SRVC srvc | -ASMSRVC srvc

次のオプションを指定してサービスとインスタンスを起動します:
     -STARTUP -SID sid | -ASMSID sid [-SYSPWD pass]
 [-STARTTYPE srvc|inst|srvc,inst] [-PFILE filename | -SPFILE]

次のオプションを指定してサービスとインスタンスをシャットダウンします:
     -SHUTDOWN -SID sid | -ASMSID sid [-SYSPWD pass]
 [-SHUTTYPE srvc|inst|srvc,inst] [-SHUTMODE normal|immediate|abort]
 次のパラメータを指定してヘルプを問い合せます: -? | -h | -help
↓とりあえず、ログの場所 C:\oraclexe\app\oracle\product\10.2.0\server\database\oradim.log
このアーティクルの参照用URLをクリップボードにコピー メンテナンス
【スキーマ作成】 -- Oracle 10g ( No.3 )
日時: 2008/04/19 11:51
名前: lightbox
スキーマを作成する前に、ユーザーとテーブルスペースの現状を調べます。

users.sql
SET LINESIZE 32767
SET PAGESIZE 0
select * from DBA_USERS;
EXIT
space.sql
SET LINESIZE 32767
select 
	TABLESPACE_NAME 名前,
	CONTENTS タイプ,
	EXTENT_MANAGEMENT エクステント管理,
	round(FSIZE/1000000) "サイズ(M)",
	(FSIZE-FREESIZE)/1000000 "使用量(M)"
from
	DBA_TABLESPACES,
(
	select 
		V$TABLESPACE.NAME TNAME1,
		sum(BYTES) FSIZE
	from V$TABLESPACE,V$DATAFILE
	where
		V$TABLESPACE.TS# = V$DATAFILE.TS#
	group by V$TABLESPACE.NAME
) TSIZE,
(
	select 
		TABLESPACE_NAME AS TNAME2,
		sum(BYTES) AS FREESIZE 
	from DBA_FREE_SPACE
	group by TABLESPACE_NAME
) TFREE
where
	TABLESPACE_NAME = TNAME1 and
	TABLESPACE_NAME = TNAME2;
EXIT
実行コマンドライン
sqlplus / as sysdba @users > users.txt
sqlplus / as sysdba @space > space.txt

テーブルスペース作成
create tablespace LIGHTBOXAREA
datafile 'C:\oraclexe\oradata\XE\LIGHTBOX.ORA'
	size 5M
	autoextend on
	next 1M
	maxsize unlimited
segment space management AUTO
select * from DBA_TABLESPACES select * from DBA_DATA_FILES 物理ファイルが既にある場合
create tablespace LIGHTBOXAREA2
datafile 'C:\oraclexe\oradata\XE\LIGHTBOX2.ORA'
	size 5M reuse
	autoextend on
	next 1M
	maxsize unlimited
segment space management AUTO
ユーザ作成
create user LIGHTBOX
	identified by LIGHTBOX
	default tablespace LIGHTBOXAREA
	temporary tablespace TEMP
	quota unlimited on LIGHTBOXAREA
	account unlock
select * from DBA_USERS ロール作成
create role LIGHTOBX_ROLE
select * from DBA_ROLES ※ ロール名が "LIGHTOBX" となっています。注意して下さい ロールに権限付与
grant 
	 ALTER PROFILE 
	,ALTER SESSION 
	,ALTER SYSTEM 
	,ALTER TABLESPACE 
	,ALTER USER 
	,CREATE PROCEDURE 
	,CREATE PROFILE 
	,CREATE PUBLIC SYNONYM 
	,CREATE ROLE 
	,CREATE ROLLBACK SEGMENT 
	,CREATE SEQUENCE 
	,CREATE SESSION 
	,CREATE SYNONYM 
	,CREATE TABLE 
	,CREATE TABLESPACE 
	,CREATE TRIGGER 
	,CREATE VIEW 
	,EXECUTE ANY PROCEDURE 
	,SELECT ANY DICTIONARY 
	,SELECT ANY SEQUENCE 
	,SELECT ANY TABLE
to LIGHTOBX_ROLE
ロールを作成したユーザで実行 select * from ROLE_SYS_PRIVS where ROLE = 'LIGHTOBX_ROLE' ロールを適用されたユーザで実行 select * from ROLE_SYS_PRIVS ロールをユーザーに適用
grant LIGHTOBX_ROLE to LIGHTBOX
select * from USER_ROLE_PRIVS ※ 補足 ユーザー削除 ( CASCADE 句が重要 ) テーブルスペース削除 物理ファイルも同時に削除( サンプル )
DROP TABLESPACE LIGHTBOXAREA2 INCLUDING CONTENTS AND DATAFILES
このアーティクルの参照用URLをクリップボードにコピー メンテナンス
追加スキーマ作成とインポート ( No.4 )
日時: 2007/08/31 23:18
名前: lightbox
※ エクスポートはこれを前提

テーブルスペース作成
create tablespace LIGHTBOXAREA2
datafile 'C:\oraclexe\oradata\XE\LIGHTBOX2.ORA'
	size 5M
	autoextend on
	next 1M
	maxsize unlimited
segment space management AUTO
ユーザー作成
create user LIGHTBOX2
	identified by LIGHTBOX2
	default tablespace LIGHTBOXAREA2
	temporary tablespace TEMP
	quota unlimited on LIGHTBOXAREA2
	account unlock
ロールをユーザーに適用
grant LIGHTOBX_ROLE to LIGHTBOX2
インポート
impdp LIGHTBOX2/LIGHTBOX2@//localhost/orcl DIRECTORY=MYDIR DUMPFILE=SCOTT.dmp REMAP_SCHEMA=SCOTT:LIGHTBOX2 REMAP_TABLESPACE=USERS:LIGHTBOXAREA2
TABLE_EXISTS_ACTION=REPLACEパラメータは、Importに、すでに存在する場合は表を削除し、 ダンプ・ファイルの内容を使用してその表を再作成してロードするように指定します TABLE_EXISTS_ACTION={SKIP | APPEND | TRUNCATE | REPLACE}
このアーティクルの参照用URLをクリップボードにコピー メンテナンス