Oracle数据库常用脚本
最常用的
执行 sqlplus "/as sysdba" 以系统管理员进入数据库
关闭数据库: shutdown immediate
启动数据库 startup
--<em>oracle</em> 常用sql
--查询数据库信息
select * from v$database;
--查询当前实例信息
select * from v$instance;
--查询数据库版本信息
select * from v$version;
--查询所有用户(dba权限)
select * from dba_users;
--查询共享内存中的sql信息,执行较慢
select hash_value from v$sqltext where sql_text like '%查询sql%';
select sql_text from v$sqltext where hash_value =查找的hash_value order by hash_value,piece;
--查询当前系统表空间存储信息
select a.file_id,a.file_name, a.TABLESPACE_NAME,a.bytes/1024/1024||'M' as totalspace,
nvl(b.freespace,0)||'M' as freespace,a.autoextensible from dba_data_files a,
(select sum(bytes)/1024/1024 as freespace,file_id,tablespace_name from dba_free_space
group by tablespace_name,file_id ) b
where a.file_id=b.file_id(+)
order by a.tablespace_name,file_name;
--统计已占用的表空间
select sum(a.bytes/1024/1024-nvl(b.freespace,0))||'M' from dba_data_files a,
(select sum(bytes)/1024/1024 as freespace,file_id,tablespace_name from dba_free_space
group by tablespace_name,file_id ) b
where a.file_id=b.file_id(+) and a.tablespace_name='tablespace名称'
--查询当前活动session最近一次执行的sql
select sql_text from v$sqltext where hash_value=(
select PREV_HASH_VALUE from v$session where status='ACTIVE' and username is not null ) order by piece
--查询相关用户的索引情况
select a.*,b.column_name,b.column_length from
(select owner,index_name,table_name,index_type,tablespace_name
from dba_indexes where owner ='用户名' and index_name not in
(select constraint_name from dba_constraints where owner='用户名' and constraint_type in ('P','R'))
)a,(select * from dba_ind_columns b where index_owner='用户名') b
where a.index_name=b.index_name
order by a.owner,a.table_name,a.index_name
--重建索引
alter index 索引名称 rebuild nologging;
--查看事务回滚率
select name,value from v$sysstat where name in('user commits','transaction rollbacks');
--sql分析优化
--脚本位置${oracle_home}/rdbms/admin/utlxplan.sql 创建执行计划表
--授权访问
create public synonym plan_table for plan_table;
grant select,update,insert,delete on plan_table to public;
--脚本位置${oracle_home}/sqlplus/admin/plustrce.sql 执行授权角色
--spfile
--数据库建库完成后,第一次
手工启动手工创建spfile文件,命令格式为
create spfile[='filename'] from pfile[='filename'];
--判断是采用spfile还是pfile启动数据库的,可以下面sql根据是那种方式<P>###NextPage###</P>
select decode(count(*),0,'pfile',1,'spfile') from V$spparameter where isspecified='TRUE' and rownum=1;
--spfile,pfile创建默认位置为$ORACLE_HOME/dbs/,$ORACLE_HOME/database/(windows)
--启动时公司搜索默认位置下spfile.ora,spfile$ORACLE_SID.ora,init$ORACLE_SID.ora
--采用指定的方式启动
startup pfile='filename';
--创建spfile,pfile可以在数据库关闭后仍然可以创建
--如果pfile内有spfile文件参数的设定,采用pfile方式启动后还可以修改初始参数到spfile中
--<em>oracle</em>9.2.0.1版本后创建数据库时系统会自动创建spfile,默认的启动方式就是采用spfile
--运行时间spfile文件没有锁定
--修改密码
alter user username identified by newpassword;
--oracle9i 验证方式有两种,可以在sqlnet.ora中配置
SQLNET.AUTHENTICATION_SERVICES=(NTS) --操作系统验证,无须用户输入密码
SQLNET.AUTHENTICATION_SERVICES=(none) --用正确的用户和密码验证
--设置密码级别 remote_login_passwordfile
--设置为exclusive,表示口令文件由一个数据库使用,远程客户端可以用sys登陆(如果密码文件删除后,远程无法登陆)
--设置为shared,表示多个数据库可以共享一个口令文件,但是只可以识别一个用户SYS,不能将sysdba权限授权给其他用户
--设置为none,表示没有口令文件 远程无法用sys登陆,只能通过操作系统验证方式
--密码文件如果丢失或损坏,系统无法启动
--可以手工创建<em>oracle</em>系统密码
orapwd file=<fname> password=<password> entries=<users>
entries --sysdba链接最大数
--密码文件没有锁定,只是启动时的引导作用
V$SYSTEM_EVENT 数据库实例整个运行期间所有进程事件的等待时间、次数视图,作为系统优化的依据
等待事件分为三种类型 空闲等待、例行等待、资源等待
注意很多时候进程是空闲等待处理的,所以在该视图主要查看资源等待时间,
如果是进程在例行操作中等待,可以查看该事件的平均等待时间
--v$session_wait
--常见的空闲等待事件:client message、null event、pipe get、pmon/smon timer、rdbms rpc message及sql*net等;
--常见的非等闲事件:
buffer busy waits、
db file scattered read、
db file sequential read、
enqueue、
free buffer waits、
latch free、
log file sync、
log file paralle write
导
入导出建议一定要同版本的导入导出工具
常见错误 exp-00003
估算导出dmp文件大小
select sum(bytes) from user_segments where segment_type='TABLE';
这个计算结果不包含LOB, 和VARRAY, 亦不含分区表数据
--设置归档模式
startup mount;
alter database archivelog;
alter database open;
alter system set log_archive_start=true scope=spfile;
shutdown immediate
startup;
数据库已经误删除数据文件,如何启动
startup mount
alter database datafile 'filepos' offline drop;(noarchivelog)
alter database datafile 'filepos' offline;(archivelog)
alter database open;
drop tablespace 'spacename' including contents;
log_miner的使用
--查看联机日志信息
select a.group#,b.member, sequence#,first_change# from v$log a ,v$logfile b
where a.group#=b.group#;
v$rollstat三个字段说明
rssize 回滚段大小
optsize optimal大小
hwmsize 你的回滚段曾经最高大小
--统计当前回滚段大小、最高峰大小
select sum(rssize)/1024/1024||'M',sum(hwmsize/1024/1024)||'M'
from v$rollstat;
--查看事务占用的回滚段大小(事务尚未提交)
select b.used_ublk,b.xidusn,a.sid from v$session a,v$transaction b
where a.taddr=b.addr;
--查看操作系统硬件信息
prtdiag -v
--临时表空间为空
错误号ORA-25153:
alter tablespace 表空间名 add tempfile '文件名' size 文件大小;
创建临时表空间
create temporary tablespace 新表空间名 tempfile '文件名' size 文件大小;
alter database default temporary tablespace 新表空间名;
drop tablespace 旧空间名 including contents;
rman数据文件损坏恢复脚本
--数据文件损坏
run{
allocate channel c1 type disk;
restore datafile 数据文件号;
recover datafile 数据文件号;
release channel c1;
}
一次控制文件损坏,恢复过程
故意修改控制文件,出现ora-00205错误
在rman下恢复控制文件
restore controlfile from file='最近的一次控制文件备份'
在alter database open resetlogs 出现
ORA 1152 file <name> was not restored from a sufficiently old backup 错误
不行
然后在rman下从自动文件恢复
restore controlfile from autobackup;
启动仍然出现该错误,
通过rman恢复database也不行,
最后没办法,采用
ALTER DATABASE BACKUP CONTROLFILE TO TRACE;
然后根据trc文件中的指导
采用第二种方式也不行,只能采用第一种建立
在数据库nomount状态下
执行trc相关 脚本
alter dat
abase open;
数据库启动正常
Oracle数据库常用脚本相关推荐
- oracle执行命令显示2,oracle数据库执行脚本时常用命令总结
收集了一篇oracle数据库执行脚本常用命令总结,希望给同学带来一些帮助. 1. 执行一个SQL脚本文件 代码如下 sqlplus user/pass@servicenamefile_name.sql ...
- Oracle Oracle数据库常用命令、Linux监听配置、oracle linux下开放1521端口
一.Linux下Oracle数据库常用命令 oracle用户下执行: $ sqlplus system/manager @ file.sql 执行sql脚本文件 $ sqlplus system/ma ...
- linux查询数据库oracle端口,Oracle数据库常用命令、Linux监听配置、oracle linux下开放1521端口...
Oracle数据库常用命令.Linux监听配置.oracle linux下开放1521端口 时间:2020-02-14 来源: 一.Linux下Oracle数据库常用命令 oracle用户下执行: $ ...
- Oracle 数据库常用操作语句大全
原文:Oracle 数据库常用操作语句大全 一.Oracle数据库操作 1.创建数据库 create database databasename 2.删除数据库 drop data ...
- Oracle数据库实用脚本
以下是Maclean.Liu所编写或收集的Oracle数据库实用脚本的列表,在这里分享一下: Script:收集Enterprise Manager Grid Control/Agent/Databa ...
- 【干货】Oracle数据库常用十一大操作指令
相关文章导读 收藏 | 超详细的Oracle19c安装步骤_XMWS-IT-CSDN博客 DBA数据库管理必备认证:ORACLE OCP 19C 教材下载 Oracle数据库常用十一大操作指令 1. ...
- 1 Oracle数据库常用命令
linux下重启oracle服务步骤 1.使用Xshell连接linux服务器. 2.以oracle身份登录数据库,命令:su – oracle 3.进入Sqlplus控制台,命令:sqlplus / ...
- Oracle数据库常用基本SQL语法
标题 Oracle数据库常用基本SQL语法 1.表的创建.插入,删除及Oracle和mysql的数据类型的区别 create table item (item_id number(5) primary ...
- Oracle数据库常用函数总结
我本楚狂人,凤歌笑孔丘 ------唐·李白<庐山谣寄卢侍御虚舟> Oracle数据库常用函数总结 一.字符串函数 二.数值函数 三.时间函数 一.字符串函数 显示员工姓名,其中首字母大写 ...
- oracle执行命令显示2,Oracle数据库执行脚本常用命令小结
1. 执行一个SQL脚本文件 复制代码 代码如下: sqlplus user/pass@servicename 或 复制代码 代码如下: SQL>start file_names 或 复制代码 ...
最新文章
- 资源过于敏澸,8h删!这波福利....请笑纳。。
- 第二次作业(个人项目实践)
- java项目中怎么查看用的序列_如何在Java应用程序中使用序列化分类器对...
- 宝塔php7.1地址在哪里,宝塔Linux面板安全入口地址忘了(方法一)
- [大数据之Sqoop] —— 什么是Sqoop?
- 10.看板方法---设置在制品限额
- OpenWrt running on VMware
- HDU 4849 Wow! Such City!陕西邀请赛C(最短路)
- 小京东V5.X短信宝插件开发
- 搜索引擎为什么不收录原创文章
- 正则 - 纳税人识别号
- Labview2018学习之三:LabVIEW编程
- java表格计算,JAVA表格两日期间月,周,日计算
- Codeforces.1139D.Steps to One(DP 莫比乌斯反演)
- 西游记研究之五:巨人的角逐
- QT 安装 配置过程
- 求生之路无限子弹服务器,求生之路2怎么调无限子弹(在单机中)
- java的英语单词发音_最长英文单词完整发音读完需要3.5个小时?
- 人脸比对指标 -- 人脸相似度
- MoocTest下载出错解决方案
热门文章
- Atitit webservice发现机制 WS-Discovery标准的规范attilax总结
- Atitit..jdk java 各版本新特性 1.0 1.1 1.2 1.3 1.4 1.5(5.0) 1.6(6.0) 7.0 8.0 9.0 attilax 大总结
- atitit. it软件项目管理---自己的员工,雇佣军、援军,混合的员工 杂牌 人员管理架构
- paip.js input onclick失灵不起作用无反应的解决.txt
- 睿远基金副总经理傅鹏博:用实业思维做投资 在认知范围之内做选择
- 郑州计算机五年大专学校排名,河南郑州大专院校最新排名2019,盘点河南省5所最好专科学校名单...
- 【病灶分类】基于matlab粒子群算法优化SVM病灶分类【含Matlab源码 1520期】
- 【优化求解】基于matlab遗传算法求解列车交路方案优化问题【含Matlab源码 1361期】
- 【语音隐写】基于matlab GUI DCT+DWT音频数字水印嵌入提取【含Matlab源码 836期】
- 【图像处理】基于matlab GUI自动报靶系统【含Matlab源码 814期】