--初次在Oracle区发贴,小弟献丑,有什么不足的地方,敬请各位指教!
--希望对大家有所帮助!
//////////////////////////////////////////////////////////
---- Step 1. 准备文件1). 拷贝文件 10201_database_linux32.zip 到 /oracle目录下;2). 解压(可用鼠标右击解压,或用口令, cd /oracle)
[root@lym oracle]# uzip 10201_database_linux32.zip3). 在/etc目录下创建一个名为 oraInst.loc 的文件,文件中的内容(两行代码)如下:
inventory_loc=ORACLE_BASE/oraInventory
inst_group= oinstall4). 输入下面的命令在oraInst.loc文件上设置合适的拥有者,组和权限:
[root@lym oracle]# chown oracle:oinstall oraInst.loc
[root@lym oracle]# chmod 664 oraInst.loc
//////////////////////////////////////////////////////////
---- Step 2 检查硬件需求
1). 查看系统物理内存,以下输出可以看出,有1G的内存,内存最低要求256M。
[root@lym oracle]# grep MemTotal /proc/meminfo
MemTotal: 1035400 kB2). 查看交换空间大小,以下输出可以看出,有2G的交换空间,交换空间的最优设置与你物理内存大小相关,详细说明请参考安装文档
[root@lym oracle]# grep SwapTotal /proc/meminfo
SwapTotal: 2096440 kB3). 查看可用物理内存和交换空间
[root@lym oracle]# free
total used free shared buffers cached
Mem: 1035400 1019716 15684 0 10152 815440
-/+ buffers/cache: 194124 841276
Swap: 2096440 108 20963324). 查看挂载的临时分区空间情况
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda3 8823460 4068908 4299112 49% /--客户端安装有四种安装模式供选择,各种安装模式的功能及其占用磁盘空间请见安装文档,
--我选择“Administrator”,占用空间为:820 MB,以适应sb1机器的使用要求!5). 查看处理器类型,看是否适合安装此软件
[root@lym oracle]# grep "model name" /proc/cpuinfo
model name : Intel(R) Celeron(R) CPU 1.70GHz/////////////////////////////////////////////////////////////////////
---- Step 3 检查软件需求1). 查看Linux版本
[root@lym oracle]# cat /etc/issue
Red Hat Enterprise Linux Server release 5 (Tikanga)
Kernel \r on an \m2). 查看内核版本
[root@lym oracle]# uname -a
Linux lym.oracle.com 2.6.18-8.el5 #1 SMP Fri Jan 26 14:15:21 EST 2007 i686 i686 i386 GNU/Linux3). 检测及安装需要安装的系统软件包
[root@lym Server]# rpm -ivh glibc-headers-2.5-12.i386.rpm
[root@lym Server]# rpm -ivh glibc-devel-2.5-12.i386.rpm
[root@lym Server]# rpm -ivh libgomp-4.1.1-52.el5.i386.rpm
[root@lym Server]# rpm -ivh gcc-4.1.1-52.el5.i386.rpm
[root@lym Server]# rpm -ivh libstdc++-devel-4.1.1-52.el5.i386.rpm
[root@lym Server]# rpm -ivh gcc-c++-4.1.1-52.el5.i386.rpm
[root@lym Server]# rpm -ivh make-3.81-1.1.i386.rpm
[root@lym Server]# rpm -ivh libXp-1.0.0-8.i386.rpm
[root@lym Server]# rpm -ivh openmotif-2.3.0-0.3.el5.i386.rpm
[root@lym Server]# rpm -ivh setarch-2.0-1.1.i386.rpm
[root@lym Server]# rpm -ivh compat-db-4.2.52-5.1.i386.rpm
[root@lym Server]# rpm -ivh compat-gcc-34-3.4.6-4.i386.rpm
[root@lym Server]# rpm -ivh compat-gcc-34-c++-3.4.6-4.i386.rpm
[root@lym Server]# rpm -ivh compat-libstdc++-33-3.2.3-61.i386.rpm
--希望对大家有所帮助!
//////////////////////////////////////////////////////////
---- Step 1. 准备文件1). 拷贝文件 10201_database_linux32.zip 到 /oracle目录下;2). 解压(可用鼠标右击解压,或用口令, cd /oracle)
[root@lym oracle]# uzip 10201_database_linux32.zip3). 在/etc目录下创建一个名为 oraInst.loc 的文件,文件中的内容(两行代码)如下:
inventory_loc=ORACLE_BASE/oraInventory
inst_group= oinstall4). 输入下面的命令在oraInst.loc文件上设置合适的拥有者,组和权限:
[root@lym oracle]# chown oracle:oinstall oraInst.loc
[root@lym oracle]# chmod 664 oraInst.loc
//////////////////////////////////////////////////////////
---- Step 2 检查硬件需求
1). 查看系统物理内存,以下输出可以看出,有1G的内存,内存最低要求256M。
[root@lym oracle]# grep MemTotal /proc/meminfo
MemTotal: 1035400 kB2). 查看交换空间大小,以下输出可以看出,有2G的交换空间,交换空间的最优设置与你物理内存大小相关,详细说明请参考安装文档
[root@lym oracle]# grep SwapTotal /proc/meminfo
SwapTotal: 2096440 kB3). 查看可用物理内存和交换空间
[root@lym oracle]# free
total used free shared buffers cached
Mem: 1035400 1019716 15684 0 10152 815440
-/+ buffers/cache: 194124 841276
Swap: 2096440 108 20963324). 查看挂载的临时分区空间情况
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/hda3 8823460 4068908 4299112 49% /--客户端安装有四种安装模式供选择,各种安装模式的功能及其占用磁盘空间请见安装文档,
--我选择“Administrator”,占用空间为:820 MB,以适应sb1机器的使用要求!5). 查看处理器类型,看是否适合安装此软件
[root@lym oracle]# grep "model name" /proc/cpuinfo
model name : Intel(R) Celeron(R) CPU 1.70GHz/////////////////////////////////////////////////////////////////////
---- Step 3 检查软件需求1). 查看Linux版本
[root@lym oracle]# cat /etc/issue
Red Hat Enterprise Linux Server release 5 (Tikanga)
Kernel \r on an \m2). 查看内核版本
[root@lym oracle]# uname -a
Linux lym.oracle.com 2.6.18-8.el5 #1 SMP Fri Jan 26 14:15:21 EST 2007 i686 i686 i386 GNU/Linux3). 检测及安装需要安装的系统软件包
[root@lym Server]# rpm -ivh glibc-headers-2.5-12.i386.rpm
[root@lym Server]# rpm -ivh glibc-devel-2.5-12.i386.rpm
[root@lym Server]# rpm -ivh libgomp-4.1.1-52.el5.i386.rpm
[root@lym Server]# rpm -ivh gcc-4.1.1-52.el5.i386.rpm
[root@lym Server]# rpm -ivh libstdc++-devel-4.1.1-52.el5.i386.rpm
[root@lym Server]# rpm -ivh gcc-c++-4.1.1-52.el5.i386.rpm
[root@lym Server]# rpm -ivh make-3.81-1.1.i386.rpm
[root@lym Server]# rpm -ivh libXp-1.0.0-8.i386.rpm
[root@lym Server]# rpm -ivh openmotif-2.3.0-0.3.el5.i386.rpm
[root@lym Server]# rpm -ivh setarch-2.0-1.1.i386.rpm
[root@lym Server]# rpm -ivh compat-db-4.2.52-5.1.i386.rpm
[root@lym Server]# rpm -ivh compat-gcc-34-3.4.6-4.i386.rpm
[root@lym Server]# rpm -ivh compat-gcc-34-c++-3.4.6-4.i386.rpm
[root@lym Server]# rpm -ivh compat-libstdc++-33-3.2.3-61.i386.rpm
解决方案 »
- Enterprise management packs 大家用过吗
- 关于job_queue_processes设置重启自动恢复为0的问题
- 关于TRUNC还有floor的问题,在线等待~~!
- 怎么存入数据库中DATE型字段的数据是:23-三月 -0005 12:00:00 AM,我想想变成“yyyy-mm-dd”格式的日期
- SQLLDR的一个错误,紧急求助 [在线等待]
- 高分求查询语句,具体如下
- 还有那些服务器有LINUX版本的ORACLE9I下载?
- 关于oracle的两个问题请教
- 请教一个问题,关于TOP(不好意思,分比较少):)
- 急,求大神写PLSQL脚本实现多个表中修改表的字段类型
- 如何得到上级单位?
- oracle9更改用户名问题
---- Step 4 配置内核及其他参数
1). vi /etc/sysctl.conf --加入以下11行代码(并将原来的# kernel.shmmax和kernel.shmall这两行参数屏蔽)
kernel.shmall = 2097152
kernel.shmmax = 2147483648
kernel.shmmni = 4096
# semaphores: semmsl, semmns, semopm, semmni
kernel.sem = 250 32000 100 128
fs.file-max = 65536
net.ipv4.ip_local_port_range = 1024 65000
net.core.rmem_default=262144
net.core.rmem_max=262144
net.core.wmem_default=262144
net.core.wmem_max=2621442). 执行以下命令使以上参数修改生效
[root@lym Server]# /sbin/sysctl -p3). vi /etc/security/limits.conf --加入以下四行代码
* soft nproc 2047
* hard nproc 16384
* soft nofile 1024
* hard nofile 655364). vi /etc/pam.d/login --加入下面一行代码
session required /lib/security/pam_limits.so5). vi /etc/selinux/config --(禁用SELINUX,安装完后可再还原成原值) 将SELINUX设置为
SELINUX=disabled////////////////////////////////////////////////////////////
---- Step 5. 添加用户组和用户,并为oracle用户设置密码[root@lym Server]# groupadd oinstall
[root@lym Server]# groupadd dba
[root@lym Server]# groupadd oper
[root@lym Server]# useradd -g oinstall -G dba oracle
[root@lym Server]# passwd oracle
Changing password for user oracle.
New UNIX password:
Retype new UNIX password:
passwd: all authentication tokens updated successfully./////////////////////////////////////////////////////////////
---- Step 6. 创建安装Oracle的文件夹,并设置其相应权限给Oracle用户。
[root@lym Server]# mkdir -p /u01/app/oracle/product/10.2.0/db_1
[root@lym Server]# chown -R oracle.oinstall /u01
[root@lym Server]# chmod 775 /u01/////////////////////////////////////////////////////////////
---- Step 7. 伪装操作系统版本,使安装Oracle时,通过操作系统验证。
vi /etc/redhat-release --(可保存此文件的副本在某位置,以便安装完成后,复原此文件)
--将这文件中的内容( Red Hat Enterprise Linux Server release 5 (Tikanga) )
替换为如下代码:
redhat-4/////////////////////////////////////////////////////////////
---- Step 8. Oracle 10g 默认不支持中文
安装时将 /etc/sysconfig/i18n 中的 LANG改为 en 即可/////////////////////////////////////////////////////////////
---- Step 9. 设置Oracle环境变量(可根据你的需要作适当更改)
[root@lym Server]# vi /home/oracle/.bash_profile --加入内容如下
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIRORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=TSH1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATHLD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATHif [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi////////////////////////////////////////////////////////////
---- Step 10. 注销root用户,并登录oracle用户,在/home/oracle目录下建立一个名为enterprise01.rsp的文件,里面的具体内容如下(参考/oracle/database/response目录下面的enterprise.rsp文件,该目录下有三个文件enterprise.rsp(企业版静默安装文件),standard.rsp(标准版静默安装文件)和custom.rsp(客户版静默安装文件),另外还有其他三个静默安装文件)。RESPONSEFILE_VERSION=2.2.1.0.0
FROM_LOCATION="../stage/products.xml"
ORACLE_HOME="/u01/app/oracle/product/10.2.0/db_1/"
ORACLE_HOME_NAME="OraDb10g_home1"
TOPLEVEL_COMPONENT={"oracle.server","10.2.0.1.0"}
DEINSTALL_LIST={"oracle.server","10.2.0.1.0"}
SHOW_SPLASH_SCREEN=false
SHOW_WELCOME_PAGE=false
SHOW_COMPONENT_LOCATIONS_PAGE=false
SHOW_CUSTOM_TREE_PAGE=false
SHOW_SUMMARY_PAGE=false
SHOW_INSTALL_PROGRESS_PAGE=false
SHOW_REQUIRED_CONFIG_TOOL_PAGE=false
SHOW_CONFIG_TOOL_PAGE=false
SHOW_RELEASE_NOTES=false
SHOW_ROOTSH_CONFIRMATION=false
SHOW_END_SESSION_PAGE=false
SHOW_EXIT_CONFIRMATION=false
NEXT_SESSION=false
NEXT_SESSION_ON_FAIL=false
SHOW_DEINSTALL_CONFIRMATION=false
SHOW_DEINSTALL_PROGRESS=false
ACCEPT_LICENSE_AGREEMENT=true
COMPONENT_LANGUAGES={"en"}
CLUSTER_NODES=
INSTALL_TYPE="EE"
s_nameForDBAGrp=dba
s_nameForOPERGrp=dba
b_oneClick=false
SHOW_DATABASE_CONFIGURATION_PAGE=false
b_createStarterDB=false
---- Step 11. 开始安装
[oracle@lym ~]$ cd /oracle/database
[oracle@lym database]$ ./runInstaller -silent -responseFile /home/oracle/enterprise01.rsp-------安装时终端输出类似如文件"安装过程中的终端显示2.txt"中的内容--------
-------请您耐心等待,可先去喝杯荼!---------//////////////////////////////////////////////////////////////////
---- Step 12. 以root用户运行安装后环境所需脚本(千万主意:要以root用户去执行这两个脚本,执行后一个脚本时,回车一下就可以了)
[root@lym ~]# sh /u01/app/oracle/oraInventory/orainstRoot.sh
[root@lym ~]# sh /u01/app/oracle/product/10.2.0/db_1/root.sh---- Step 测试看能否进sqlplus----
[oracle@lym ~]$ sqlplus /nologSQL*Plus: Release 10.2.0.1.0 - Production on Thu May 22 00:25:56 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.SQL> 至此Oracle的产品已经安装完成,可是目前为止我们还没有建立数据库。
由于没有X界面无法启动dbca ,所以不能用dbca来帮我们建立数据库。这时候你可能会想到用create database 语句来建立数据库,可是语法实在是繁琐,并且还要运行许多的
oracle脚本 。此时,我们可以利用oracle提供的种子数据库还原一个数据库出来(详细见以下操作)
假设我们要建立的数据库的名称为TSH1(这个名称跟你安装前设置的环境变量中的ORACLE_SID相一致)。
-----------------------------------------------------------------------------
---------利用oracle提供的种子数据库还原一个数据库出来 的详细步骤---------------
///////////////////////////////////////////////////////////////////////////
---- Step 1. 建立我们所需的目录,并刷新授权。
[root@lym Server]# mkdir -p /u01/app/oracle/admin/TSH1/{a,b,u}dump
[root@lym Server]# mkdir -p /u01/app/oracle/oradata/TSH1
[root@lym Server]# chown -R oracle.oinstall /u01
[root@lym Server]# chmod 775 /u01
--你可以在oracle用户下,看刷新授权前后,权限的变化(比较如下)。
[oracle@lym oracle]$ ls -l --刷新授权前/uo1/oracle/oracle下面各文件的权限
total 16
drwxr-xr-x 3 root root 4096 May 22 06:24 admin
drwxr-xr-x 3 root root 4096 May 22 06:25 oradata
drwxr-xr-x 6 oracle oinstall 4096 May 22 06:19 oraInventory
drwxr-xr-x 3 oracle oinstall 4096 May 22 06:08 product
[oracle@lym oracle]$ ls -l ----刷新授权后/uo1/oracle/oracle下面各文件的权限
total 16
drwxr-xr-x 3 oracle oinstall 4096 May 22 06:24 admin
drwxr-xr-x 3 oracle oinstall 4096 May 22 06:25 oradata
drwxr-xr-x 6 oracle oinstall 4096 May 22 06:19 oraInventory
drwxr-xr-x 3 oracle oinstall 4096 May 22 06:08 product/////////////////////////////////////////////////////////////////////////////
---- Step 2. 找到oracle为种子数据库提供的控制文件并copy至/u01/app/oracle/oradata/TSH1目录下(在Oracle用户下操作)。
[oracle@lym oracle]$ cd /u01/app/oracle/product/10.2.0/db_1/assistants/dbca/templates/
[oracle@lym templates]$ cp Seed_Database.ctl /u01/app/oracle/oradata/TSH1////////////////////////////////////////////////////////////////////////////
---- Step 3. 建立pfile文件(在Oracle用户下操作)。
[oracle@lym templates]$ cd /u01/app/oracle/product/10.2.0/db_1/dbs
[oracle@lym templates]$ vi initTSH1.ora --输入以下三行并保存退出
*.db_name=SEEDDATA
control_files='/u01/app/oracle/oradata/TSH1/Seed_Database.ctl'
compatible=10.2.0.1.0----注:因为Seed_Database.ctl控制文件中记录的db_name为SEEDDATA,所以第一行的设置如此。
/////////////////////////////////////////////////////////////////////////////
---- Step 4. 启动数据库到mount状态,并使用默认的参数建立spfile文件;然后重新启动数据库并更改sga_max_size,sga_target参数的值;然后再次重新启动数据库(具体操作如下)。
[oracle@lym dbs]$ sqlplus / as sysdbaSQL*Plus: Release 10.2.0.1.0 - Production on Thu May 22 06:56:19 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.Connected to an idle instance.SQL> startup mount
ORACLE instance started.Total System Global Area 113246208 bytes
Fixed Size 1218004 bytes
Variable Size 58722860 bytes
Database Buffers 50331648 bytes
Redo Buffers 2973696 bytes
Database mounted.
SQL> create spfile from pfile;File created.SQL> shutdown immediate
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.Total System Global Area 113246208 bytes
Fixed Size 1218004 bytes
Variable Size 58722860 bytes
Database Buffers 50331648 bytes
Redo Buffers 2973696 bytes
Database mounted.
SQL> alter system set sga_max_size=200M scope=spfile;System altered.SQL> alter system set sga_target=160M scope=spfile;System altered.SQL> shutdown immediate
ORA-01109: database not open
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.Total System Global Area 209715200 bytes
Fixed Size 1218580 bytes
Variable Size 100665324 bytes
Database Buffers 104857600 bytes
Redo Buffers 2973696 bytes
Database mounted.
SQL>
---- Step 5. 用rman连接数据库
[oracle@lym ~]$ rman target /Recovery Manager: Release 10.2.0.1.0 - Production on Thu May 22 07:22:51 2008Copyright (c) 1982, 2005, Oracle. All rights reserved.connected to target database: SEEDDATA (DBID=3891038516, not open)RMAN> list backup;using target database control file instead of recovery catalogList of Backup Sets
===================BS Key Type LV Size Device Type Elapsed Time Completion Time
------- ---- -- ---------- ----------- ------------ ---------------
1 Full 89.23M DISK 00:00:36 30-JUN-05
BP Key: 1 Status: AVAILABLE Compressed: YES Tag:
Piece Name: /ade/aime_10.2_lnx_push/oracle/oradata/Seed_Database.dfb
List of Datafiles in backup set 1
File LV Type Ckp SCN Ckp Time Name
---- -- ---- ---------- --------- ----
1 Full 446074 30-JUN-05 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/system01.dbf
2 Full 446074 30-JUN-05 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/undotbs01.dbf
3 Full 446074 30-JUN-05 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/sysaux01.dbf
4 Full 446074 30-JUN-05 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/users01.dbfRMAN> ----可以看到,我们可以利用/ade/aime_10.2_lnx_push/oracle/oradata/Seed_Database.dfb这个备份集来还原数据库。
但是很明显我们系统中并没有这样一个文件/ade/aime_10.2_lnx_push/oracle/oradata/Seed_Database.dfb ,但是查找发现路径/u01/app/oracle/product/10.2.0/db_1/assistants/dbca/templates下有 Seed_Database.dfb文件 。----此明有两种方法解决此问题,一个是建立一个软链接/ade/aime_10.2_lnx_push/oracle/oradata/Seed_Database.dfb 指向 /u01/app/oracle/product/10.2.0/db_1/assistants/dbca/templates/Seed_Database.dfb 。另一个是创建目录/ade/aime_10.2_lnx_push/oracle/oradata/
并将Seed_Database.dfb copy至其下 。-- 这里,我们使用第二种方法(具体操作如下):
[root@lym ~]# mkdir -p /ade/aime_10.2_lnx_push/oracle/oradata/
[root@lym ~]# chown -R oracle.oinstall /ade
[root@lym ~]# chmod 775 /ade
[root@lym ~]# su - oracle
[oracle@lym ~]$ cd /u01/app/oracle/product/10.2.0/db_1/assistants/dbca/templates
[oracle@lym templates]$ cp Seed_Database.dfb /ade/aime_10.2_lnx_push/oracle/oradata/
[oracle@lym templates]$ ////////////////////////////////////////////////////////////////////////////
---- Step 6. 还原数据库(先在RMAN下执行如下命令)
run {
set newname for datafile '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/system01.dbf' to '/u01/app/oracle/oradata/TSH1/system01.dbf';
set newname for datafile '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/sysaux01.dbf' to '/u01/app/oracle/oradata/TSH1/sysaux01.dbf';
set newname for datafile '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/undotbs01.dbf' to '/u01/app/oracle/oradata/TSH1/undotbs01.dbf';
set newname for datafile '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/users01.dbf' to '/u01/app/oracle/oradata/TSH1/users01.dbf';
restore database;
switch datafile all;
}-- 然后,执行如下命令可以看到我们所需要的数据文件都还原回来了,但是现在还缺少log file 。
我们现在打开数据库。
[oracle@lym templates]$ cd /u01/app/oracle/oradata/TSH1
[oracle@lym TSH1]$ ls
Seed_Database.ctl sysaux01.dbf system01.dbf undotbs01.dbf users01.dbf
[oracle@lym TSH1]$ -- 因为控制文件中记录的log file路径为 /ade/aime_10.2_lnx_push/oracle/oradata/seeddata 所以要先创建相应的目录并再次刷新其权限(具体操作如下)。
[root@lym ~]# mkdir -p /ade/aime_10.2_lnx_push/oracle/oradata/seeddata
[root@lym ~]# chown -R oracle.oinstall /ade
[root@lym ~]# chmod 775 /ade-- 然后在sqlplus中执行如下命令:
[oracle@lym TSH1]$ sqlplus / as sysdba
SQL> alter database open resetlogs;Database altered.SQL>-- 此时,在目录/ade/aime_10.2_lnx_push/oracle/oradata/seeddata 下创建了redo01.log,redo02.log,redo03.log,temp01.dbf文件。-- 我们要更改这几个文件的路径,所以先将数据库关闭,然后cp /ade/aime_10.2_lnx_push/oracle/oradata/seeddata/× /u01/app/oracle/oradata/orcl/
启动数据库到mount状态,并更改日志和临时文件的路径(具体操作如下)
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> [oracle@lym ~]$ cd /ade/aime_10.2_lnx_push/oracle/oradata/seeddata
[oracle@lym seeddata]$ cp redo01.log redo02.log redo03.log temp01.dbf /u01/app/oracle/oradata/TSH1/-- 然后启动数据库到mount状态,并更改日志和临时文件的路径
SQL> startup mount;
ORACLE instance started.Total System Global Area 209715200 bytes
Fixed Size 1218580 bytes
Variable Size 104859628 bytes
Database Buffers 100663296 bytes
Redo Buffers 2973696 bytes
Database mounted.
SQL> alter database rename file '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/redo01.log' to '/u01/app/oracle/oradata/TSH1/redo01.log';Database altered.SQL> alter database rename file '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/redo02.log' to '/u01/app/oracle/oradata/TSH1/redo02.log';Database altered.SQL> alter database rename file '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/redo03.log' to '/u01/app/oracle/oradata/TSH1/redo03.log'; Database altered.SQL> alter database rename file '/ade/aime_10.2_lnx_push/oracle/oradata/seeddata/temp01.dbf' to '/u01/app/oracle/oradata/TSH1/temp01.dbf';Database altered.SQL> alter database open;Database altered.SQL> -- 到此数据库已经建立,并且数据文件也放到了我们期待的地方。但是还有一个问题,就是数据库名称不是我们事先期待的。
SQL> show parameter nameNAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string
db_name string SEEDDATA
db_unique_name string SEEDDATA
global_names boolean FALSE
instance_name string TSH1
lock_name_space string
log_file_name_convert string
service_names string SEEDDATA
SQL> ////////////////////////////////////////////////////////////////////////
下面我们将数据库名称SEEDDATA改成我们需要的TSH1 。注意此时仅仅更改参数文件的值是不行的,因为控制文件中同样也记录着数据库的名称。-- Step 7. 更改数据库名称
-- 首先备份控制文件脚本(具体操作如下)
SQL> alter database backup controlfile to trace as '/tmp/ctl.txt';Database altered.SQL> create pfile from spfile;File created.SQL> -- 然后将spfile文件(spfileTSH1.ora)删除,编辑pfile文件(initTSH1.ora)将db_name="SEEDDATA" 改成 db_name="TSH1"(具体操作如下)。
[oracle@lym dbs]$ cd /u01/app/oracle/product/10.2.0/db_1/dbs
[oracle@lym dbs]$ rm spfileTSH1.ora
[oracle@lym dbs]$ vi initTSH1.ora-- 然后保存对initTSH1.ora的修改并退出。
-- 然后vi /home/oracle/ctl2.txt(参考/tmp/ctl.txt重建控制文件脚本),脚本的内容如下:CREATE CONTROLFILE REUSE DATABASE "SEEDDATA" set database "TSH1" RESETLOGS NOARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
LOGFILE
GROUP 1 '/u01/app/oracle/oradata/TSH1/redo01.log' SIZE 50M,
GROUP 2 '/u01/app/oracle/oradata/TSH1/redo02.log' SIZE 50M,
GROUP 3 '/u01/app/oracle/oradata/TSH1/redo03.log' SIZE 50M
DATAFILE
'/u01/app/oracle/oradata/TSH1/system01.dbf',
'/u01/app/oracle/oradata/TSH1/undotbs01.dbf',
'/u01/app/oracle/oradata/TSH1/sysaux01.dbf',
'/u01/app/oracle/oradata/TSH1/users01.dbf',
'/u01/app/oracle/oradata/TSH1/tt.dbf'
CHARACTER SET US7ASCII
;
-- 然后重新启动数据库到nomount状态,运行上面建立控制文件的脚本,然后打开数据库(具体操作如下) 。
SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup nomount;
ORACLE instance started.Total System Global Area 209715200 bytes
Fixed Size 1218580 bytes
Variable Size 104859628 bytes
Database Buffers 100663296 bytes
Redo Buffers 2973696 bytes
SQL> @/home/oracle/ctl2.txtControl file created.SQL> alter database open resetlogs; Database altered.SQL>
---- Step 8. 控制文件更名并实现冗余
[root@lym ~]# cd /u01/app/oracle/oradata/TSH1
[root@lym TSH1]# mv Seed_Database.ctl control01.ctl
[root@lym TSH1]# cp control01.ctl control02.ctl
[root@lym TSH1]# cp control01.ctl control03.ctl
[root@lym TSH1]# cd /u01/app/oracle/product/10.2.0/db_1/dbs
[root@lym dbs]# chown -R oracle.oinstall /u01
[root@lym dbs]# chmod 775 /u01 -- 修改参数文件initTSH1.ora(修改*.control_files这一行,其内容如下)
[root@lym dbs]# vi initTSH1.ora
*.control_files='/u01/app/oracle/oradata/TSH1/control01.ctl','/u01/app/oracle/oradata/TSH1/control02.ctl','/u01/app/oracle/oradata/TSH1/control03.ctl'-- 重新启动数据库,大功告成!
SQL> startup
ORACLE instance started.Total System Global Area 209715200 bytes
Fixed Size 1218580 bytes
Variable Size 104859628 bytes
Database Buffers 100663296 bytes
Redo Buffers 2973696 bytes
Database mounted.
Database opened.
SQL> show parameter nameNAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_file_name_convert string
db_name string TSH1
db_unique_name string TSH1
global_names boolean FALSE
instance_name string TSH1
lock_name_space string
log_file_name_convert string
service_names string TSH1
SQL> create user lym identified by lym;User created.SQL> grant resource to lym;Grant succeeded.SQL> grant create session to lym;Grant succeeded.SQL> conn lym/lym;
Connected.
SQL> select sysdate from dual;SYSDATE
---------
22-MAY-08SQL>
Step8
从网上下载zysong.ttf文件。到本地
http://download.csdn.net/source/1073202
然后使用命令
mkdir -p /usr/share/fonts/zh_CN/TrueType
cp zysong.ttf /usr/share/fonts/zh_CN/TrueType/
将字体放到以上位置,就可以在安装时,使用汉字了。Step9中,[root@lym Server]# vi /home/oracle/.bash_profile --加入内容如下
# Oracle Settings
TMP=/tmp; export TMP
TMPDIR=$TMP; export TMPDIR ORACLE_BASE=/u01/app/oracle; export ORACLE_BASE
ORACLE_HOME=$ORACLE_BASE/product/10.2.0/db_1; export ORACLE_HOME
ORACLE_SID=TSH1; export ORACLE_SID
ORACLE_TERM=xterm; export ORACLE_TERM
PATH=/usr/sbin:$PATH; export PATH
PATH=$ORACLE_HOME/bin:$PATH; export PATH export NLS_LANG=AMERICAN_AMERICA.UTF8LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib; export LD_LIBRARY_PATH
CLASSPATH=$ORACLE_HOME/jre:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib; export CLASSPATH if [ $USER = "oracle" ]; then
if [ $SHELL = "/bin/ksh" ]; then
ulimit -p 16384
ulimit -n 65536
else
ulimit -u 16384 -n 65536
fi
fi 添加上红色字体部分,让系统语言和数据库语言一致,那么在使用SQLPLUS的时候,就可以看到中文了,不会再是乱码了。
Invalid entry 'ORACLE_BASE/oraInventory' for 'inventory_loc' in file '/etc/oraInst.loc'.Please enter absolute file path for central inventory location.
: No such file or directory