11g Express Edtion(Linuxの場合)
http://www.ajisaba.net/db/ora_linux_sjis.html
データベース削除前の準備
initXE.oraの作成
$ cd /u01/app/oracle/product/11.2.0/xe/dbs $ sqlplus / as sysdba SQL> create pfile = 'initXE.ora' from spfile = 'spfileXE.ora';
データベース削除
# su - oracle $ sqlplus / as sysdba
データベースのシャットダウン
SQL> shutdown immediate データベースがクローズされました。 データベースがディスマウントされました。 ORACLEインスタンスがシャットダウンされました。
restrictを指定して起動
startup restrict mount ORACLEインスタンスが起動しました。 Total System Global Area 417546240 bytes Fixed Size 2227080 bytes Variable Size 306185336 bytes Database Buffers 104857600 bytes Redo Buffers 4276224 bytes データベースがマウントされました。
データベースの削除
SQL> drop database; データベースが削除されました。 Oracle Database 11g Express Edition Release 11.2.0.2.0 - 64bit Productionとの接続が切断されました。 SQL> quit
SHIFTJISのデータベース作成
データベース作成用のスクリプト
/u01/app/oracle/product/11.2.0/xe/dbs/createdb.sql
CREATE DATABASE XE LOGFILE GROUP 1 ('/u01/app/oracle/oradata/XE/redo01a.log') SIZE 100M BLOCKSIZE 512, GROUP 2 ('/u01/app/oracle/oradata/XE/redo02a.log') SIZE 100M BLOCKSIZE 512, GROUP 3 ('/u01/app/oracle/oradata/XE/redo03a.log') SIZE 100M BLOCKSIZE 512 MAXLOGFILES 5 MAXLOGMEMBERS 5 MAXLOGHISTORY 1 MAXDATAFILES 100 CHARACTER SET JA16SJIS または JA16SJISTILDE NATIONAL CHARACTER SET UTF8 EXTENT MANAGEMENT LOCAL DATAFILE '/u01/app/oracle/oradata/XE/system01.dbf' SIZE 325M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED SYSAUX DATAFILE '/u01/app/oracle/oradata/XE/sysaux01.dbf' SIZE 325M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED DEFAULT TABLESPACE users DATAFILE '/u01/app/oracle/oradata/XE/users01.dbf' SIZE 500M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED DEFAULT TEMPORARY TABLESPACE temp TEMPFILE '/u01/app/oracle/oradata/XE/temp01.dbf' SIZE 20M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED UNDO TABLESPACE undotbs1 DATAFILE '/u01/app/oracle/oradata/XE/undo01.dbf' SIZE 200M REUSE AUTOEXTEND ON MAXSIZE UNLIMITED;
インスタンス起動とデータベース作成
SQL> startup nomount pfile=initXE.ora ORACLEインスタンスが起動しました。 Total System Global Area 417546240 bytes Fixed Size 2227080 bytes Variable Size 293602424 bytes Database Buffers 117440512 bytes Redo Buffers 4276224 bytes
データベースを作成する
SQL> @createdb.sql データベースが作成されました。 表領域が作成されました。 データベースが変更されました。
データベース作成後に実行するスクリプト
SQL> @/u01/app/oracle/product/11.2.0/xe/rdbms/admin/catalog.sql SQL> @/u01/app/oracle/product/11.2.0/xe/rdbms/admin/catproc.sql connect system/manager @/u01/app/oracle/product/11.2.0/xe/sqlplus/admin/pupbld.sql
10g Express Edtion (Windowsの場合)
http://weyk.air-nifty.com/none/2007/01/oraclexeja16sji_7d01.html
http://www006.upp.so-net.ne.jp/auctor/software/oracle_xe_ja16sjistild.html
以下抜粋
※以降はWindowsのコマンドプロンプトから
デフォルトのインスタンスの削除
以下のbatchを実行
C:\oraclexe\app\oracle\product\10.2.0\server\bin\cleanup.bat
※以降はWindowsのExploerなどを利用
デフォルトのインスタンスのspfile削除
以下のファイルを削除
C:\oraclexe\app\oracle\product\10.2.0\server\dbs\*
デフォルトのインスタンスのpfileやパスワードファイルを削除
以下のファイルを削除
C:\oraclexe\app\oracle\product\10.2.0\server\database\* のoradba.exe以外
デフォルトのインスタンスの制御ファイルとデータファールを削除
以下のファイルを削除
C:\oraclexe\oradata\XE\*
※以降はメモ帳あたりで
pfileを作成(メモ帳でも何でも)
C:\oraclexe\app\oracle\product\10.2.0\server\database\initXE.ora
------------------------
java_pool_size=4194304 large_pool_size=4194304 shared_pool_size=62914560 streams_pool_size=0 audit_file_dest='C:\oraclexe\app\oracle\admin\XE\adump' background_dump_dest='C:\oraclexe\app\oracle\admin\XE\bdump' compatible='10.2.0.1.0' control_files='C:\oraclexe\oradata\XE\control.dbf' core_dump_dest='C:\oraclexe\app\oracle\admin\XE\cdump' db_name='XE' dispatchers='(PROTOCOL=TCP) (SERVICE=XEXDB)' job_queue_processes=2 open_cursors=300 os_authent_prefix='' pga_aggregate_target=40M remote_login_passwordfile='EXCLUSIVE' sessions=20 sga_target=140M shared_servers=1 undo_management='AUTO' undo_tablespace='UNDO' user_dump_dest='C:\oraclexe\app\oracle\admin\XE\udump'
-------------------------
※以降はWindowsのコマンドプロンプトから
Windowsのサービスを作成
oradim -NEW -SID XE -SYSPWD oracle -PFILE C:\oraclexe\app\oracle\product\10.2.0\server\database\initXE.ora
環境変数設定
set ORACLE_SID=XE
sqlplusを起動
sqlplus / "as sysdba"
※以降はsqlplus内
インスタンスを起動
startup nomount
データベース作成
create database XE logfile group 1 ('C:\oraclexe\oradata\XE\redo1.dbf') size 32M, group 2 ('C:\oraclexe\oradata\XE\redo2.dbf') size 32M, group 3 ('C:\oraclexe\oradata\XE\redo3.dbf') size 32M character set JA16SJIS national character set utf8 datafile 'C:\oraclexe\oradata\XE\system.dbf' size 240M autoextend on next 16M maxsize unlimited extent management local sysaux datafile 'C:\oraclexe\oradata\XE\sysaux.dbf' size 48M autoextend on next 8M maxsize unlimited undo tablespace undo datafile 'C:\oraclexe\oradata\XE\undo.dbf' size 48M autoextend on default temporary tablespace temp tempfile 'C:\oraclexe\oradata\XE\temp.dbf' size 8M autoextend on;
必要なスクリプトを実行
@C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\ADMIN\catalog.sql @C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\ADMIN\catproc.sql
接続ユーザの切り替え
connect system/manager
必要なスクリプトを実行
@C:\oraclexe\app\oracle\product\10.2.0\server\sqlplus\admin\pupbld.sql
環境変数
LinuxでXEを使う場合は、パスの設定などを通常のユーザで行う場合
export ORACLE_SID=XE export ORACLE_HOME=/u01/app/oracle/product/11.2.0/xe export PATH=${PATH}:${ORACLE_HOME}/bin export NLS_LANG=Japanese_Japan.AL32UTF8
などを設定しておくと良い。
シェルスクリプトとして、利用するときだけ sourceコマンドに渡してもよい。
DDLの取得
http://blogs.yahoo.co.jp/tksoft/61030927.html
XEでデータベースを再作成した場合、 dbms_metadata.get_ddl を使うとエラーが出る。
[ORA-39212]インストール・エラー: XSLスタイルシートが正しくロードされませんでした
dbms_metadata.get_ddl を使えるようにするには、他のOracle(XE以外)が動作している環境から \oracle\product\10.2.0\db_1\RDBMS\xml
をXEの
rdbms/xml
へコピーし、以下のコマンドを実行する。
exec dbms_metadata_util.load_stylesheets
もし、この時に kupostdt.xsl が見つからないのエラーが出る場合は、xml/xsl以下に kupostdt.xslを作成する。
kupostdt.xsl
<?xml version="1.0"?> <!-- NAME kupostdt.xsl DESCRIPTION XSLT stylesheet for XML => DDL conversion of ku$_post_data_table_t ADTs NOTES Do NOT modify this file under any circumstance. Copy the file if you wish to use this stylesheet with an external XML/XSL parser MODIFIED MM/DD/YY sdavidso 06/08/09 - new stylesheet - for minimize records_per_bock --> <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform"> <!-- Import required scripts --> <xsl:import href="kucommon.xsl"/> <!-- Top-level parameters --> <xsl:param name="PRETTY">1</xsl:param> <xsl:param name="SQLTERMINATOR">1</xsl:param> <!-- params for parse --> <xsl:param name="PRS_DDL">0</xsl:param> <xsl:param name="PRS_DELIM">\{]`</xsl:param> <xsl:param name="PRS_VERB">0</xsl:param> <xsl:param name="PRS_OBJECT_TYPE">0</xsl:param> <xsl:param name="PRS_SCHEMA">0</xsl:param> <xsl:param name="PRS_NAME">0</xsl:param> <xsl:param name="PRS_GRANTEE">0</xsl:param> <xsl:param name="PRS_GRANTOR">0</xsl:param> <xsl:param name="PRS_BASE_OBJECT_TYPE">0</xsl:param> <xsl:param name="PRS_BASE_OBJECT_SCHEMA">0</xsl:param> <xsl:param name="PRS_BASE_OBJECT_NAME">0</xsl:param> <xsl:template match="POST_DATA_TABLE_T"> <!-- ******************************************************************* Template: POST_DATA_TABLE_T - template for table attributes which can only be set after table data is loaded. ******************************************************************** --> <xsl:call-template name="DoParse"> <xsl:with-param name="Verb">ALTER</xsl:with-param> <xsl:with-param name="ObjectType">POST_DATA_TABLE</xsl:with-param> <xsl:with-param name="SchemaNode" select="SCHEMA_OBJ/OWNER_NAME"/> <xsl:with-param name="NameNode" select="SCHEMA_OBJ/NAME"/> </xsl:call-template> <xsl:if test="(SPARE1 mod 65536)>=32768"> <xsl:text> ALTER TABLE </xsl:text> <xsl:apply-templates select="SCHEMA_OBJ"/> <xsl:text>MINIMIZE RECORDS_PER_BLOCK</xsl:text> </xsl:if> </xsl:template> </xsl:stylesheet>
[カテゴリ: データベース > Oracle]
[通知用URL]
Tweet
最終更新時間:2015年06月13日 10時16分24秒