我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Oracle日常巡检维护中常用的一些STUFF

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Oracle日常巡检维护中常用的一些STUFF

查看oracle版本

select banner from sys.v_$version;

-------------------------------------

查看不同用户的连接数

select username,count(username) from v$session where username is not null group by username;

-------------------------------------

查询oracle的并发连接数
select count(*) from v$session where status='ACTIVE';

--------------------------------------

Oracle数据库中表的导入导出操作:

以Windows下的数据库为例(用cmd方式):

导出表:

1.导出整个数据库

exp 导表的用户名/密码@实例名 file='E:\xxx.dmp' full=y

2.导出单表或多表

exp 导表的用户名/密码@实例名 file='E:\xxx.dmp' tables=t1[(t1,t2,t3)]

3.导出数据库中一个或多个用户下的表

exp 导表的用户名/密码@实例名 file='E:\xxx.dmp' owner=(system,sys)

4.将数据库中的表table1中的字段filed1以"00"打头的数据导出

exp 导表的用户名/密码@实例名 file='E:\xxx.dmp' tables=(table1) query=\" where filed1 like '00%'\"

------------------------------------------

导入表:

将E:\xxx.dmp 中的数据导入某数据库中。

imp 导表的用户名/密码@实例名 file=e:\xxx.dmp

imp 导表的用户名/密码@实例名 full=y file=e:\xxx.dmp ignore=y

在后面加上 ignore=y 忽略导入的报错,直接导入。

2 将e:\xxx.dmp中的表table1 导入

imp 导表的用户名/密码@实例名 file=e:\xxx.dmp tables=(table1)

----------------------------

Linux的话直接exp,imp根据提示操作,效果也是一样的。如果通过语句,可以现在emedit上写好直接复制黏贴即可。

---------------------------

数据库中查看版本:

select * from v$version;

Linux下查看ORACLE版本信息:

file $ORACLE_HOME/bin/oracle

-------------------------

数据库服务器查看字符集:

select * from nls_database_parameters;

其中NLS_CHARACTERSET下面的就是该数据库服务器的字符集

-------------------------

查看表空间xxx使用情况:(需sysdba权限):

select

      a.tablespace_name               表空间名,

      total/(1024*1024)               表空间大小,

      (total-free)/(1024*1024)        表空间使用大小,

      free/(1024*1024)                表空间剩余大小,

      round((total-free)/total,4)*100 "使用率%"

from   (select  tablespace_name,sum(bytes) free from dba_free_space

       group   by tablespace_name) a,

      (select  tablespace_name,sum(bytes) total from dba_data_files

       group   by tablespace_name) b

where  a.tablespace_name = b.tablespace_name

and    a.tablespace_name = 'xxx';

-------------------------

查看当前用户下的表空间:(非sysdba)

select

 a.bytes/1024/1024 "used(MB)",

b.bytes/1024/1024 "free(MB)",

a.bytes/1024/1024+b.bytes/1024/1024 "total(MB)"

 from user_ts_quotas a,user_free_space b 

where a.TABLESPACE_NAME=b.TABLESPACE_NAME and a.TABLESPACE_NAME='XXX';

-------------------------

查看当前角色XXX所具有的权限:

select * from dba_sys_privs where grantee='XXX';

-------------------------

查看当前用户所具有的角色:

select * from user_role_privs;

select * from session_privs;

-------------------------

查看当前用户的系统权限和表级权限 
select * from user_sys_privs; 
select * from user_tab_privs;

-------------------------

查看哪些用户具有sysdba或sysooper权限:

select * from V$PWFILE_USERS;

-------------------------

查看用户为XXX的表空间配额。(-1为不受限制)

select tablespace_name,username,max_bytes from  DBA_TS_QUOTAS where username='XXX';

-------------------------

设定用户mc的表空间配额限为100M:

alter user mc quota 100M on tablespacname;

-------------------------

设定用户mc的表空间配额为无限制:

alter user mc quota unlimited on tablespacname;

-------------------------

赋予用户mc配置表空间无限额的权限:

grant unlimited tablespace to mc;

-------------------------

查看当前数据库的实例名:

select instance_name from v$instance;

-------------------------

修改用户表空间和临时表空间:

ALTER USER SCOTT DEFAULT TABLESPACE USERS;

ALTER USER SCOTT TEMPORARY TABLESPACE TEMP;

-------------------------

查看当前用户缺省的表空间:

select username,default_tablespace from user_users;

--------------------------------

查看归档是否开启;开启/关闭归档:

--------------

查看归档:

sqlplus>archive log list;

开启归档

sqlplus>shutdown immediate;(启动归档前先要停止数据库)

sqlplus>startup mount;(数据库以mount方式启动)

sqlplus>alter database archivelog;(启动数据库归档)

sqlplus>alter system set log_archive_dest_1="/arch"(改变路径,使用盘符)

sqlplus>alter database open;(打开数据库)

sqlplus>archive log list;(查看归档是否已经打开)

关闭归档

alter database noarchivelog;

--------------

查看归档日志使用情况:

select * from v$flash_recovery_area_usage;

-----------------------

查看用户账户状态:

select username,account_status from dba_users where username in ('DBSNMP','SYSMAN');

----------------------------

查看REDO日志位置、状态,以及添加、删除REDO日志组方法:

位置:

select * form v$logfile;

状态:

select group#,thread#,bytes/1024/1024,status from v$log;

:添加

alter database add logfile group 1|2|3|4('/u01/oracle/oradata/mcocp/redo01|02|03|04') size 100m;

删除:

alter database drop logfile group 1|2|3|4;

注:oracle11g默认的redo logsize为50M

----------------------------------------

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Oracle日常巡检维护中常用的一些STUFF

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

linux中有哪些常用的服务器维护命令

本篇文章给大家分享的是有关linux中有哪些常用的服务器维护命令,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。一.更改telnet登录慢的问题:cd /etc vi resol
2023-06-10

如何在MySQL中设计一个可维护的会计系统表结构以支持日常业务操作和维护?

如何在MySQL中设计一个可维护的会计系统表结构以支持日常业务操作和维护?在企业中,会计系统是一个非常重要的组成部分,负责处理财务数据的存储、计算和管理。为了能够支持日常业务操作和维护,设计一个可维护的会计系统表结构是至关重要的。在MySQ
如何在MySQL中设计一个可维护的会计系统表结构以支持日常业务操作和维护?
2023-10-31

在 Python 中,如何在维护原始调用堆栈的同时检查然后重新引发异常?

问题内容我遇到了一种情况,我正在捕获特定的异常类型,检查异常的消息以检查它是否确实是我想要捕获的异常,如果不是,则重新引发异常:try:# do something exception-proneexcept FooException
在 Python 中,如何在维护原始调用堆栈的同时检查然后重新引发异常?
2024-02-08

编程热搜

目录