10G进asm  直接su - oracle 然后asmcmd
 11G进asm,需要su - grid 然后asmcmd
 
1.切换到相关oracle数据库实例下:
 
  echo $ORACLE_SID  查看当前数据库实例 或者进入sql下执行
  select instance_name from V$instance;

  export ORACLE_SID=sohdb1  切换到sohdb1数据库实例下。
 
  (注意:ps-ef |grep ora_   ps-ef |grep smon 查看数据库有几个实例最后一段代表的就是数据库实例)

2.查看表空间使用率
SELECT UPPER(F.TABLESPACE_NAME) "TS-NAME",
       D.TOT_GROOTTE_MB "TS-BYTES(M)",
       D.TOT_GROOTTE_MB - F.TOTAL_BYTES "TS-USED (M)",
       F.TOTAL_BYTES "TS-FREE(M)",
       TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100,
                     2),
               '990.99') "TS-PER"
         FROM (SELECT TABLESPACE_NAME,
               ROUND(SUM(BYTES) / (1024 * 1024), 2) TOTAL_BYTES,
               ROUND(MAX(BYTES) / (1024 * 1024), 2) MAX_BYTES
          FROM SYS.DBA_FREE_SPACE
         GROUP BY TABLESPACE_NAME) F,
       (SELECT DD.TABLESPACE_NAME,
               ROUND(SUM(DD.BYTES) / (1024 * 1024), 2) TOT_GROOTTE_MB
          FROM SYS.DBA_DATA_FILES DD
         GROUP BY DD.TABLESPACE_NAME) D
WHERE D.TABLESPACE_NAME = F.TABLESPACE_NAME
ORDER BY 5 DESC;

查看磁盘组的名字,总计大小及剩余大小
SQL> select NAME,TOTAL_MB,FREE_MB from v$asm_diskgroup;

NAME                             TOTAL_MB    FREE_MB
------------------------------ ---------- ----------
OCR_VOTE                            51199      50803
DATA                               307194      30827
ARCH                               102398     102303


查看出ODS表空间的数据文件名 表空间 及状态
select file_name,tablespace_name,status from dba_data_files where tablespace_name='ODS';
FILE_NAME                                     TABLESPACE_NAME                STATUS
+DATA /pgjt/datafile/ods.539.784460919           ODS                         AVAILABLE

 


为ODS表空间增加8G数据文件(说明:直接加+DATA就可以,不用写/pgjt/datafile/ods.539.784460919,会自动生成。)
SQL>alter tablespace ODS add datafile '+DATA' size 8G;

 

 


Oracle数据库ASM磁盘组+ASM2_ARCH使用率高
查看进程
ps -ef |grep pmon

# su - oracle

[YOU HAVE NEW MAIL]
$ sqlplus / as sysdba

SQL*Plus: Release 10.2.0.4.0 - Production on Mon Feb 9 16:30:23 2015

Copyright (c) 1982, 2007, Oracle.  All Rights Reserved.


Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options

SQL> select name,total_mb,free_mb from v$asm_diskgroup;

NAME                             TOTAL_MB    FREE_MB
------------------------------ ---------- ----------
ARCH                              3334794    3254850
DATA                              4077376     553269

SQL> quit
Disconnected from Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options
$ rman target /


Recovery Manager: Release 10.2.0.4.0 - Production on Mon Feb 9 16:33:38 2015

Copyright (c) 1982, 2007, Oracle.  All rights reserved.

connected to target database: ZLJG (DBID=4286942513)

RMAN> exit


删除归档命令:delete archivelog all completed before ‘sysdate-3’;##删除后备份,在rman底下删除


3.RMAN下删除归档
查看无效归档
su - oracle
rman target /
下边两部必须先后都要执行
Crosscheck archivelog all;

删除过期过期归档
Delete expired archivelog all;

 

数据库集群常用命令
 
Usage: srvctl config database  (获取数据库配置信息)
 
Usage:srvctl config database -d <name> [-a] [-t]
         srvctl config database -d (查看数据库配置信息)
 
Usage: srvctl start nodeapps -n <node_name>
          srvctl start nodeapps -n ods1 (启动数据库节点1服务)
 
Usage: srvctl start asm -n <node_name> [-i <asm_inst_name>] [-o <start_options>]
          srvctl start asm -n ods1 -i asm1  (启动节点1asm实例)
 
Usage:srvctl start database -d <name> [-o <start_options>]
         srvctl start database -d DWTH  (启动所用节点DWTH数据库) 
 
Usage: srvctl start instance -d <name> -i "<inst_name_list>" [-o <start_options>]
          srvctl start instance -d DWTH -i DWTH1  (启动DWTH数据库实例1)
      
Usage: srvctl start listener -n <node_name> [-l <lsnr_name_list>]
          srvctl start listener -n ods1 -l lsnrc1 (启动节点1监听)
 
Usage: srvctl stop listener -n <node_name> [-l <lsnr_name_list>]
          srvctl stop listener -n ods1 -l lsnrc1 (停止节点1监听)
 
Usage: srvctl stop instance -d <name> -i "<inst_name_list>" [-o <stop_options>]
          srvctl stop instance -d DWTH -i DWTH1 (停止DWTH数据库实例1)
 
Usage: srvctl stop database -d <name> [-o <stop_options>]
          srvctl stop database -d DWTH  (停止所用节点DWTH数据库)
 
Usage: srvctl stop asm -n <node_name> [-i <asm_inst_name>] [-o <stop_options>]
          srvctl stop asm -n ods1 -i asm1  (停止节点1asm实例)
 
Usage: srvctl stop nodeapps -n <node_name> [-r]
          srvctl start nodeapps -n ods1 (停止数据库节点1服务)
         

 

#切换数据库实例,在OS的ORACLE用户下,sgmdm2为实例名称
export ORACLE_SID=sgmdm2


#查看数据库状态,open为正常状态
select status from v$instance;

#设置显示格式
set pagesize 300;
set linesize 300;

#查询用户列表及用户状态
select USERNAME,password,ACCOUNT_STATUS from dba_users;

#查看用户分配的权限

select * from dba_role_privs order by GRANTEE;

select * from dba_role_privs where GRANTEE = 'PATROL';


#查询Oracle的密码策略配置

select profile from dba_users where username='user_name';

#查询默认帐户是否使用默认口令
[oracle@yjbsdb3 ~]$ sqlplus

set pagesize 300;
set linesize 300;
select USERNAME,password,ACCOUNT_STATUS from dba_users;


锁定与解锁账号:
alter user zlgl account lock; 锁定zlgl账号
alter user zlgl account unlock; 为zlgl账号解除锁定


11g oracle  存在密码180天过期的问题,需要如下修改,在一台节点做就行,不用重启,立即生效

#1:查询:
select * from dba_profiles where profile='DEFAULT' and resource_name='PASSWORD_LIFE_TIME'; //如果状态为limited,说明有180天的限制,需要第2步解除限制
#2:修改
alter profile default limit PASSWORD_LIFE_TIME UNLIMITED;
3:解锁账号:
 alter user zlgl account unlock; 为zlgl账号解除锁定