0. 安装系统(全安装)
以下参考: http://my.opera.com/jlake/blog/show.dml/98701
1. 做个链接
ln -s /usr/lib/libstdc++.so. 6.0.3 /usr/lib/libstdc++.so.5
如果不做此链接,在安装过程中建好数据库,将会出现不能链接不上数据库问题。
2.添加下面的行到/etc/security/limits.conf以修改你的资源限制:
oracle soft nofile 65536
oracle hard nofile 65536
oracle soft nproc 16384
oracle hard nproc 16384
3.编辑/etc/sysctl.conf文件,在后面添加下参数做微调操作系统内核
kernel.core_uses_pid=1
kernel.shmall=2097152
kernel.shmmax=2147483648
kernel.shmmni = 4096
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=262144
说明: shmmax内核参数定义单个共享内存段的最大值,如果该参数设置小于Oracle SGA设置,
那么SGA就会被分配多个共享内存段。这在繁忙的系统中可能成为性能负担,带来系统问题。
more /proc/sys/kernel/shmmax
4. # sysctl -p
5.创建用户和组及相关目录
--创建dba组
# /usr/sbin/groupadd dba
--创建oinstall组
# /usr/sbin/groupadd oinstall
--创建oracle用户并设置用户所属组
# /usr/sbin/useradd -g oinstall -G dba -m oracle
--创建相关安装目录
# mkdir -p /opt/ora10/product
# mkdir /var/opt/oracle
--设置目录所有者和权限
# chown -R oracle.oinstall /opt/ora10
# chown -R oracle.dba /var/opt/oracle
# chmod -R 775 /opt/ora10
# chmod -R 775 /var/opt/oracle
6. 修改Oracle密码
passwd oracle
7. 利用root修改10201_database_linux32.zip权限,使oracle能访问
8. root创建目录
chown -R oracle.oinstall /home/oracle/oracle/product
chown -R oracle.dba /home/oracle/oracle
chmod -R 775 /home/oracle/oracle/product
chmod -R 775 /home/oracle/oracle
9. 设置oracle的环境变量
export ORACLE_HOME="/home/oracle/oracle/product"
export ORACLE_BASE="/home/oracle/oracle"
export ORACLE_SID=orcl
export NLS_LANG="american_america.ZHS16GBK"
export LD_LIBRARY_PATH="$ORACLE_HOME/lib:/usr/lib:/lib"
export PATH="$ORACLE_HOME/bin:$PATH"
注意:安装时候点选得字符集要注意 包含为 AL32UTF8
rm -rf /etc/ora*
rm -rf /home/oracle/ (此为oracle配置文件路径)
Open_cursors: 一个session能打开的游标个数,从300调到500
Sga_max_siz: oracle启动后最大内存分配数,从608174080( 580M )调到1476395008( 1408M )
Sga_target: oracle启动后实际内存分配数,从608174080( 580M )调到1476395008( 1408M )
Sort_area_size 数据库排序使用的内存数,从608174080( 64M )调到104857600 ( 100M )
Process :oracle能使用的最大进程数,这个数*1.5表示可以支持的session数据,
从150调到300
参数的修改办法,郁闷,居然9i的控制台无法修改 10g 的参数,只好用命令了。
1. 修改pfile文件,红色的是修改的
############################################################################## # Copyright (c) 1991, 2001, 2002 by Oracle Corporation ##############################################################################
########################################### # Cache and I/O ########################################### db_block_size=8192 db_file_multiblock_read_count=16
########################################### # Cursors and Library Cache ########################################### open_cursors=300
########################################### # Database Identification ########################################### db_domain="" db_name=orcl
########################################### # Diagnostics and Statistics ########################################### background_dump_dest=/home/oracle/oracle/admin/orcl/bdump core_dump_dest=/home/oracle/oracle/admin/orcl/cdump user_dump_dest=/home/oracle/oracle/admin/orcl/udump
########################################### # File Configuration ########################################### control_files=("/home/oracle/oracle/oradata/orcl/control01.ctl", "/home/oracle/oracle/oradata/orcl/control02.ctl", "/home/oracle/oracle/oradata/orcl/control03.ctl") db_recovery_file_dest=/home/oracle/oracle/flash_recovery_area db_recovery_file_dest_size=2147483648
########################################### # Job Queues ########################################### job_queue_processes=10
########################################### # Miscellaneous ########################################### compatible= 10.2.0 .1.0
########################################### # Processes and Sessions ########################################### processes=300
########################################### # SGA Memory ########################################### sga_target=1476395008
########################################### # Security and Auditing ########################################### audit_file_dest=/home/oracle/oracle/admin/orcl/adump remote_login_passwordfile=EXCLUSIVE
########################################### # Shared Server ########################################### dispatchers="(PROTOCOL=TCP) (SERVICE=orclXDB)"
########################################### # Sort, Hash Joins, Bitmap Indexes ########################################### pga_aggregate_target=201326592
########################################### # System Managed Undo and Rollback Segments ########################################### undo_management=AUTO undo_tablespace=UNDOTBS1
#add by hugh sort_area_size = 104857600 open_cursors = 500 |
2. 验证刚才的修改是否正确
sqlplus / as sysdba;
shutdown abort // 这里小心,如果时正常使用的数据库,而不是刚装的数据库,不要使用abort
#让数据库从新的初始化文件启动
startup pfile=/home/oracle/oracle/admin/orcl/pfile/init.ora.1122007174739
#把新的配置文件应用的默认的配置文件,这样以后启动数据库直接startup就好了
create spfile from pfile='/home/oracle/oracle/admin/orcl/pfile/init.ora.1122007174739'
#关闭数据库
shutdown
#启动数据,正常启动表示成功修改了配置文件,你可以通过工具查一下那些参数是否真的被修改了
starup
锁了sysman
表空间设计:将来一个用户使用一个表空间,便于备份
同时所有用户使用TEMP做完临时表空间
System表空间用来存储用户字典,所以需要足够大;
措施:增加一个数据文件, 500M ,自动扩展;
UNDO表空间用来保存回滚时需要的数据,需要足够大;
措施:把数据文件从 35M 扩到 300M ,自动扩展;
Temp是排序等操作使用,所以需要足够大;
措施:增加一个数据文件, 200M ,自动扩展;
数据文件为:unions01.dbf
数据文件大小: 500M ,自动扩展
ditu51_unions
要点: 使用默认表空间为union
授权:
SQL> grant resource to ditu51_unions;
Grant succeeded.
如果要从别的数据库中导入用户到新的数据库中(chaiqi)
第一步:
--从老的机器上导出
exp DITU51_UNIONS/DITU51_UNIONS file=DITU51_UNIONS.DMP
scp DITU51_UNIONS.DMP 192.168.2.180:/home/oracle
第二步:
--删除用户
DROP USER DITU51_UNIONS CASCADE
--创建用户 并且给 用户 赋予权限,必须要付给 dba用户权限不然无法导入。
create user DITU51_UNIONS identified by DITU51_UNIONS;
grant connect to DITU51_UNIONS;
grant resource to DITU51_UNIONS;
grant dba to DITU51_UNIONS;
第三步:
--导入用户
imp DITU51_UNIONS/DITU51_UNIONS file=DITU51_UNIONS.DMP full=Y
第四步:
删除 用户的dba权限
一定要注意oracle 字符集的问题!并且这个问题一定要在安装的时候注意!
select * from nls_database_parameters
2.180这台数据库硬件非常好(当然是相对的 J),这台机器的安全要重点考虑,我先考虑几块:
1) 指定一个DBA,主要工作是系统备份、用户创建、表空间创建等工作
2) 运维组重点考虑网络和系统方面的安全,比如口令等
3) sys和system的密码要复杂,并且限个别人知道
4) 所有创建的用户不能有DBA权限
2.180归档位置在 /home/oracle/oracle/flash_recovery_area/ORCL/onlinelog
在Oracle 10g 中,只要启动数据库的归档模式,Oracle就会启用自动归档,从而避免了 10g 以前由于用户疏忽所带来的一系列问题。 |
采用本地/异地导出的方式,运维组和柴琦搞定吧
Zhangbo:
鉴于现在新的uions_db服务器的归档日志的隐患问题(当前运行的重做日志美满一次 42M ,便会归一次档,产生一个 42M 的归档日志文件,从 2007年 2月 12日 19点 到 2007年 2月 13日中午 12:00,已产成总量为 166M 的归档日志文件)
A.每晚进行一次联机备份操作,备份当天所有数据文件、当天所有归档日志文件、和一个控制文件。
写一个脚本,(并添加到/etc/contab,每天凌晨三点执行,)scp 到创建了信任关系的另一台机器的相应的文件夹下,在这台机器上,按日期分类,并永久保留。(还要再细化)
B.每周进行一次输出(Export)操作,既逻辑备份。也就是以用户模式,备份成.dmp格式的文件每周的逻辑备份是否可以采用如下脚本?
#!/bin/bash
export ORACLE_HOME="/home/oracle/oracle/product/ 10.2.0 "
export ORACLE_BASE="/home/oracle/oracle"
export ORACLE_SID=orcl
export NLS_LANG="SIMPLIFIED CHINESE_CHINA.ZHS16GBK"
export PATH="$ORACLE_HOME/bin:$PATH"
/oradata/oracle/product/ 10.1.0 .3/bin/exp USERID=blog_blog/51ditublog1020lingtu FILE=/backup/sh/ditu_blog/`date '+%y%m%d%H'`.dmp rows=Y indexes=Y
constraints=Y grants=Y triggers=Y consistent=Y
zip -r /backup/sh/ditu_blog/`date '+%y%m%d%H'`.zip /backup/sh/ditu_blog/*.dmp
rm /backup/sh/ditu_blog/*.dmp
然后再写一个脚本,(并添加到/etc/contab,每周运行一次,也可手动执行)scp 到创建了信任关系的另一台机器的相应的文件夹下,在这台机器上,按日期分类,并永久保留,在192.168.2.180上,保留最近两周(可根据硬件情况商定)的归档日志文件,删除两周以前的备份文件。备份方式均为联机。
清理的周期和办法DBA来完成,这个工作一定要有
Caoguoanglin:
因为oracle 10G 使用闪存归档模式,默认是 2G ,如果出现归档日志满 2G ,,现在把这个归档日志调整为 60G .
过一段时间,我们清理一下归档日志即可.
调整归档日志的空间方法如下:
1. sqlplus '/as sysdba '
2. alter system set db_recovery_file_dest_size= 60G scope=both;
这个就是调整这个归档日志的方法,但是这个归档日志,还是需要过一段时间清理一下,因为这个会导致磁盘满的.
下面我们会定期清理一下这个归档日志的.
方法一:(在内网这么操作)
现使用的3台oracle数据库服务器磁盘空间满主要是由于归档文件长时间没有清理导致,因此需要定期对数据库归档文件进行清理,现将具体操作步骤总结如下:
1、 因为清理归档文件需要关闭数据库,因此应该在数据库使用量最少的时候进行。
2、 通过oracle客户端管理器关闭正在连接的会话。
3、 关闭数据库
$su – oracle
$sqlplus ‘/as sysdba’
Sql>shutdown;
4、 将/oradata/oracle/archive目录下的归档文件移出备份。
5、 启动数据库
$su – oracle
$sqlplus ‘/as sysdba’
Sql>startup;
6、 重新启动连接数据库的应用服务。
7、 链接端的tomcat与apache
安装Oracle数据库... 1
卸载Oracle数据库... 3
Oracle安装成功后配置... 4
1.登陆管理控制台... 4
2.调系统参数... 4
3.锁住一些没有用的用户... 7
4. 扩表空间... 7
扩system等表空间... 7
创建Union表空间... 8
5. 创建新用户及用户导入... 10
6. 安全策略要求... 11
7. 备份策略要求... 11
1)启动数据库的归档模式,下面的内容非常详细了... 11
2)日备份... 12
3)归档日志的清理,把归档日志空间调整60G.. 13
Oracle数据库空间清理文档... 14
目前用到Oracle数据库的51ditu应用... 15