Oracle10gXE DB再作成でログインできず
デフォルトで作成されるDBは、「NLS_CHARACTERSET=AL32UTF8」だが、
JA16SJISTILDE で使いたいため、データベース「XE」を一度削除して、
同じデータベース名で再作成したんですが、再作成後、
sqlplusにてSYSTEMユーザでつなげません。
SYSTEMユーザでつないで、pupbld.sql を流さないと、
新規ユーザを作ってもログイン時にエラーがでます。
警告: 製品のユーザー・プロファイル情報がロードされていません。 PUPBLD.SQLをSYSTEMとして実行する必要があるかもしれません。
どなたか、よろしくお願いします。
◆以下、手順メモです◆
1.データベースの削除
>sqlplus /nolog
SQL> connect / as sysdba
接続されました。
SQL> shutdown abort
ORACLEインスタンスがシャットダウンされました。
SQL> startup restrict mount
ORACLEインスタンスが起動しました。
Total System Global Area 146800640 bytes
Fixed Size 1286220 bytes
Variable Size 75501492 bytes
Database Buffers 67108864 bytes
Redo Buffers 2904064 bytes
データベースがマウントされました。
SQL> drop database;
データベースが削除されました。
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Productionとの接続が切
断されました。
2.フォルダの作成
以下のフォルダが存在することを確認。中に存在したファイルを削除。
C:\oraclexe\app\oracle\admin\XE\adump
C:\oraclexe\app\oracle\admin\XE\bdump
C:\oraclexe\app\oracle\admin\XE\cdump
C:\oraclexe\app\oracle\admin\XE\dpdump
C:\oraclexe\app\oracle\admin\XE\udump
C:\oraclexe\oradata\XE
3.初期化パラメータファイルの作成
以下の内容でテキストファイルを作成し、
C:\oraclexe\app\oracle\product\10.2.0\server\dbs\initXE.ora として保存する。
----
db_name="XE"
control_files=(C:\oraclexe\oradata\XE\ctrl01, C:\oraclexe\oradata\XE\ctrl02, C:\oraclexe\oradata\XE\ctrl03)
db_block_size=8192
user_dump_dest='C:\oraclexe\app\oracle\admin\XE\udump'
background_dump_dest='C:\oraclexe\app\oracle\admin\XE\bdump'
core_dump_dest='C:\oraclexe\app\oracle\admin\XE\cdump'
sga_target=400M
undo_management=auto
undo_tablespace=undo1
------------------------------------------------------------------
4.データベースの作成
(1) 初期化パラメータファイルを指定して、nomount 状態で起動する。
>sqlplus / as sysdba
SQL> shutdown abort
ORACLEインスタンスがシャットダウンされました。
SQL> connect / as sysdba
アイドル・インスタンスに接続しました。
SQL> startup nomount pfile=C:\oraclexe\app\oracle\product\10.2.0\server\dbs\initXE.ora
ORACLEインスタンスが起動しました。
:
:
(2) データベースを作成 (create database コマンド)
SQL> create database XE
2 logfile group 1 ('C:\oraclexe\oradata\XE\redo01a.log') size 50M,
3 group 2 ('C:\oraclexe\oradata\XE\redo02a.log') size 50M,
4 group 3 ('C:\oraclexe\oradata\XE\redo03a.log') size 50M
5 datafile 'C:\oraclexe\oradata\XE\system.dbf'
6 size 100M autoextend on next 10M maxsize unlimited extent management local
7 sysaux datafile 'C:\oraclexe\oradata\XE\sysaux.dbf'
8 size 100M autoextend on next 10M maxsize unlimited
9 default temporary tablespace temp
10 tempfile 'C:\oraclexe\oradata\XE\temp.dbf' size 100M extent management local
11 undo tablespace undo1
12 datafile 'C:\oraclexe\oradata\XE\undo1.dbf' size 100M
13 character set JA16SJISTILDE
14 national character set AL16UTF16
15 ;
データベースが作成されました。
(3) pfile から spfile を作成
SQL> create spfile='C:\oraclexe\app\oracle\product\10.2.0\server\dbs\spfileXE.ora'
2 from pfile='C:\oraclexe\app\oracle\product\10.2.0\server\dbs\initXE.ora'
3 ;
ファイルが作成されました。
---
5.データベースの再起動 (正常起動の確認) の後、スクリプトファイルの実行。
スクリプトファイル … catalog.sql, catproc.sql, pupbld.sql
----
SQL> shutdown
データベースがクローズされました。
データベースがディスマウントされました。
ORACLEインスタンスがシャットダウンされました。
SQL> startup
ORACLEインスタンスが起動しました。
Total System Global Area 419430400 bytes
Fixed Size 1287784 bytes
Variable Size 121637272 bytes
Database Buffers 293601280 bytes
Redo Buffers 2904064 bytes
データベースがマウントされました。
データベースがオープンされました。
> sqlplus / as SYSDBA
SQL> @C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\ADMIN\catalog.sql
:
: (結果の出力)
:
SQL> @C:\oraclexe\app\oracle\product\10.2.0\server\RDBMS\ADMIN\catproc.sql
:
: (結果の出力)
:
★この後、SQL*Plusを終了して、コマンドプロンプトから
「sqlplus SYSTEM/ORACLE」でログインしようとすると、エラーになる。
ERROR:
ORA-01017: invalid username/password; logon denied
理由がまったくわかりません。どうかよろしくお願いします。
お礼
その通りでした。ありがとうございました