[圈子:个人情感] 你永远不懂我伤悲,像白天不懂夜的黑

乌鸦* 2011-01-05
geminiyellow 写道

  我深深地爱着你,

  你却爱着一个傻逼,

  那个傻逼不爱你,

  你比傻逼还傻逼,

  喔……

  你还给傻逼织毛衣!”

我喜欢!
regedit_123 2011-06-17
geminiyellow 写道
这个……阴影


确实是阴影!!
shijinming 2011-06-17
1.如何设置指定文件的大小、路径等的配置
2.脚本如何实现
3.脚本怎么调用,由谁调用
4.如何跟踪文件
5.监控目录的大小怎么去判断
6.文件的大小怎么去判断,有那么多日志文件,难道要每个去做判断吗
6.怎么设置定时
shijinming 2011-06-17
1.alter system set parameter=Value scope=spfile|both|memory

(1)scope=spfile
对参数的修改仅记录在服务器初始化参数文件中。该选项同时适用于动态与静态的初

始化参数。修改后的参数只有下一次启动数据库时更改才会生效。
(2)scope=memory
对参数的修改记录在内存中,对于动态初始化参数,更改立即生效。修改并不会被记

录在服务器端的初始化参数中。下一次启动数据库时更改失效,不能用于静态初始化

参数。
(3)scope=both
对参数的修改同时记录在内存中和服务器端的初始化参数文件中。为默认使用值。

2.初始化参数文件:文本参数文件(pfile)   可编辑
                服务器参数文件(spfile) 不可编辑


3.cron
cron基本格式 :
*  *  *  *  *  command
分  时  日  月  周    命令

前面五个*号代表五个数字

数字的取值范围和含义如下:

分钟 (0-59)
小時 (0-23)
日期 (1-31)
月份 (1-12)
星期 (0-6)//0代表星期天

除了数字还有几个个特殊的符号就是"*"、"/"和"-"、",",*代表所有的取值范围内

的数字,"/"代表每的意思,"*/5"表示每5个单位,"-"代表从某个数字到某个数

字,","分开几个离散的数字。

例如:*/1 * * * * /home/myJava/mycode.sh 


最常用的cron命令:
crontab -l     //显示已经存在的cron任务
crontab -e    //编辑某个用户的cron任务列表
crontab -u    //设定某个用户的cron服务
crontab -r     //删除某个用户的cron服务
shijinming 2011-06-17
Shell是命令解析器,将用户的指令转换为相应的机器能够运行的程序。

Shell脚本是一个包含一系列命令序列的文本文件。当运行这个脚本文件时,文件中

包含的命令序列将得到执行。


ex1:脚本范例
#!/bin/sh
#echo something
echo "hello world"
mkdir /tnt

注意:

第一行:#!用来指定该脚本程序的解析程序,开头的第一行只能有这些:#!/bin/sh
第二行:注释,在进行shell编程时,以#开头的句子表示注释,直到这一行的结束。
shijinming 2011-06-17
create_tables()
{
TABLE_SQL=$SPG_ROOT/dbscript/oracle/create_table.sql
DEFAULT_DATA_SQL=$SPG_ROOT/dbscript/oracle/insert_default_data.sql

  declare db_reco_size="";
  declare db_undo_tbs_initsize="200M";
  declare db_undo_tbs_maxsize="200M";
  declare db_user_tbs_initsize="1228M";  # 1.2G
 
if [ "$INTE_OMS" = "y" ];then
    db_reco_size=1G;
    db_user_tbs_maxsize=1228M
else
    db_reco_size=4G;
    db_user_tbs_maxsize=20G;
fi;
shijinming 2011-06-17
su - $DB_USER -c "sqlplus /nolog <<EOF
   conn sys/manager as sysdba;
   shutdown immediate;
   startup mount;
   alter database archivelog;
   alter database open;
   alter system set audit_trail=none scope=spfile;
   alter system set db_recovery_file_dest_size=$db_reco_size;
   alter system set db_flashback_retention_target=60 scope=both;
   alter system set undo_retention=300;
   alter database datafile '/opt/oracle4spg/oradb/oradata/IMSSPG/undotbs01.dbf' resize $db_undo_tbs_initsize;
   alter database datafile '/opt/oracle4spg/oradb/oradata/IMSSPG/undotbs01.dbf' autoextend on next 100M maxsize $db_undo_tbs_maxsize;
   alter database datafile '/opt/oracle4spg/oradb/oradata/IMSSPG/users01.dbf' resize $db_user_tbs_initsize;
   alter database datafile '/opt/oracle4spg/oradb/oradata/IMSSPG/users01.dbf' autoextend on next 400M maxsize $db_user_tbs_maxsize;   
   create role $DB_ROLE_NAME identified by $DB_ROLE_NAME;
   create profile ims_spg_profile limit PASSWORD_LIFE_TIME 9999 FAILED_LOGIN_ATTEMPTS unlimited;
   create user $DB_SPG_USER identified by $DB_SPG_PASSWD profile ims_spg_profile;
   alter user $DB_SPG_USER quota unlimited on users;
       grant connect,resource,$DB_ROLE_NAME to $DB_SPG_USER;
       revoke connect,resource from $DB_SPG_USER;
     grant CREATE SESSION,CREATE SEQUENCE,CREATE TABLE,CREATE VIEW, create any directory to $DB_ROLE_NAME;
     grant $DB_ROLE_NAME to $DB_SPG_USER;
     alter user scott account lock;    
     revoke become user from dba;
     revoke become user from imp_full_database;
     revoke become user from sys; 
            
   conn $DB_SPG_USER/$DB_SPG_PASSWD;
       @$TABLE_SQL;
       @$DEFAULT_DATA_SQL;
    
EOF" >> $DB_LOG 2>&1;

return 0  
}
shijinming 2011-06-17
原路径:
$ORACLE_BASE/flash_recovery_area/<ORACLE db_unique_name>/flashback
新路径:
$ORACLE_BASE/flashback/<ORACLE db_unique_name>/flashback
3.3.2 说明
1. 查看闪回日志位置的方法
SQL> show parameter db_recovery_file_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest                string      /opt/oracle4spg/oradb/flash_re
                                                 covery_area
db_recovery_file_dest_size           big integer 4G

2.修改闪回日志位置的方法
在数据库创建时修改参数文件(pfile或者spfile)中的db_recovery_file_dest参数,不需要指定最后面两个子目录(即<ORACLE db_unique_name>/flashback),Oracle会自动生成。
shijinming 2011-06-17
3.3.3 配置Oracle的db_recovery_file_dest_size参数
设置该参数值为500M。
1. 说明
1.该参数所代表路径下的文件说明
目前该目录下存放了在线日志、归档日志以及闪回日志。
后续将仅存放闪回日志,将在线日志和归档日志从该目录中移除,避免相互影响。

SQL> select * from v$flash_recovery_area_usage;
FILE_TYPE            PERCENT_SPACE_USED PERCENT_SPACE_RECLAIMABLE NUMBER_OF_FILES
-------------------- ------------------ ------------------------- ---------------
CONTROL FILE                          0                         0               0
REDO LOG                           9.77                         0               4
ARCHIVED LOG                        .09                         0               7
BACKUP PIECE                          0                         0               0
IMAGE COPY                            0                         0               0
FLASHBACK LOG                         0                         0               0
FOREIGN ARCHIVED LOG                  0                         0               0

7 rows selected.


2.查看和修改该参数的方法示例
SQL> show parameter db_recovery_file_dest_size

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_recovery_file_dest_size           big integer 10G
SQL> alter system set db_recovery_file_dest_size=10G;

System altered.
shijinming 2011-06-17
3.4 指定Oracle在线重做日志路径(不合入本次可靠性开发)-
为了防止与闪回日志争抢空间,将Oracle在线重做日志从db_recovery_file_dest下移出来。
3.4.1 路径
与原来路径一致,但注意要修改db_create_online_log_dest_1以区分其与闪回日志的路径。
$ORACLE_BASE/flash_recovery_area/< ORACLE db_unique_name>/onlinelog
3.4.2 说明
1. 查看在线重做日志位置的方法
方法一:
SQL> SELECT * FROM V$LOGFILE WHERE TYPE = 'ONLINE';

    GROUP# STATUS  TYPE    MEMBER                                                                                                IS_
---------- ------- ------- --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- ---
         3         ONLINE  /opt/oracle4spg/oradb/oradata/IMSSPG/redo03.log                                                       NO
         2         ONLINE  /opt/oracle4spg/oradb/oradata/IMSSPG/redo02.log                                                       NO
         1         ONLINE  /opt/oracle4spg/oradb/oradata/IMSSPG/redo01.log                                                       NO
方法二(目前我们没有具体设置相关参数,因此显示为空):
SQL> show parameter db_create_online_log_dest

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
db_create_online_log_dest_1          string
db_create_online_log_dest_2          string
db_create_online_log_dest_3          string
db_create_online_log_dest_4          string
db_create_online_log_dest_5          string


2.增删在线重做日志位置的方法举例
增加 :
ALTER DATABASE ADD LOGFILE MEMBER 'f:\oracle  \oradata\jssbook\redoa02.log' TO GROUP 1; 
删除:
ALTER DATABASE DROP LOGFILE MEMBER '  f:\oracle\oradata\jssbook\redoa02.log';

3.修改在线重做日志位置的方法
a)在数据库创建时修改参数文件(pfile或者spfile)中的db_create_online_log_dest_1参数。
b)在创建数据库时指定online redo log的路径。
Global site tag (gtag.js) - Google Analytics