os环境:windows pc
数据库版本:oracle 10.0.2.1
这是一次小打小闹的报错,原因是帮同事改他自己玩的测试库sga,原sga_max_size大小为600m,我修改为2g,重启时报错。
ora-27100 shared memory realm already exists
通过查询官方文档,解释该原因是因为windows pc 32位机最大支持分配oracle内存为1.7g,所以导致报错,这是一次缺少经验的教训。
解决案例:
1:sql> show parameter sga
name type value
------------------------------------ ----------- ------------------------------
lock_sga boolean false
pre_page_sga boolean false
sga_max_size big integer 568m
sga_target big integer 568m
2:sql> alter system set sga_max_size=2048m scope=spfile; -将sga设置为2g
sql> alter system set sga_target=2048m scope=spfile;
3:sql> shutdown immediate -重启数据库报错
sql> startup
ora-27100 shared memory realm already exists
osd-00029: ????????????
o/s-error: (os 8) ??????????????????????????????
4:sql> create pfile from spfile; -使用spfile生成pfile,修改参数文件内的以下两个参数,
将参数调小。
*.sga_max_size=600000000
*.sga_target=600000000
5:sql> startup pfile='e:/oracle/product/10.2.0/db_1/database/initorcl.ora' -这时候启动
依然报错,这是因为windows机器需要重启后台服务,否则无法生效(郁闷)
ora-27100 shared memory realm already exists
osd-00029: ????????????
o/s-error: (os 8) ??????????????????????????????
7:找到管理/服务/oracleserviceorcl 重启
8:sql> startup pfile='e:/oracle/product/10.2.0/db_1/database/initorcl.ora'
oracle 例程已经启动。
total system global area 603979776 bytes
fixed size 1250428 bytes
variable size 163580804 bytes
database buffers 432013312 bytes
redo buffers 7135232 bytes
数据库装载完毕。
数据库已经打开。
9:sql> create spfile from pfile; -根据启动的pfile生成spfile,下次启动时候则主动读取spfile
参数文件
sql> startup force
sql> show parameter spfile
name type value
------------------------------------ ----------- ------------------------------
spfile string e:/oracle/product/10.2.0/db_1/
database/spfileorcl.ora
sql> show parameter sga;
name type value
----------------------------------- ----------- ------------------------------
lock_sga boolean false
pre_page_sga boolean false
sga_max_size big integer 576m
sga_target big integer 576m
posted on 2015-03-20 14:58
坏男孩 阅读(1204)
评论(0) 编辑 收藏 所属分类:
oracle篇章