oracle
文章平均质量分 56
oracle
申公
做一个有逼格的程序员
展开
-
oracle 创建用户且只有查询权限
createuserUSERBidentifiedby"密码"defaulttablespace表空间;--在USERA中执行grant的sql。--在USERA下查询所有表,组成sql。--在USERB中执行grant语句。--授予查询任何表权限。原创 2022-07-25 10:38:10 · 8342 阅读 · 0 评论 -
记录oracle的一些操作
设置用户名和密码尽量不要带@符号,否则后期导入导出等各种操作会出问题。最笨的办法就是临时改个简单的密码,操作完再改回去。导出:按照用户导出,EXCLUDE是排除某张表的操作,单引号需要转义一下:expdp user/"***" schemas=user dumpfile=mydir:user1.dmp logfile=mydir:user1.log EXCLUDE=TABLE:\"IN\'DM_CSSMC_OPR_VS_FIN_ADJ\'\" compression=all;导出多个用户的对象,就需要用db原创 2022-07-09 17:02:10 · 365 阅读 · 0 评论 -
Oracle DBlink方式
有时候,需要在两个Oracle数据库之间手工同步数据时,DBLink是最方便快捷的手段之一。一.在创建之前首先要查一下用户是否具有DBlink的创建权限。以sys用户登录本地数据库查看 dblink 的权限。select * from user_sys_privs t where t.privilege like upper('%link%');1 SYS CREAT原创 2016-03-03 17:42:36 · 1155 阅读 · 0 评论 -
Oracle 单个表查询速度极慢处理过程
Oracle 单个表查询速度极慢处理过程 现象: 今天,接到开发人员报有一个表查询了半天也没出结果,表里大概有几十条数据配置: Oracle 10G RAC 、Aix Unix操作系统处理过程:我的第一反应数据库问题不大,因为只有这张表查询慢,而数据库里其它表数据的查询速度正常,但是按照流程还是先查看了alert日志,看了看临时表转载 2016-03-10 19:13:47 · 11860 阅读 · 0 评论 -
oracle表查询速度极慢的处理过程记录一下
Oracle 单个表查询速度极慢处理过程 现象:前两天看到我们的oracle数据库,一条查询语句执行的特别慢,导致应用程序连接超时,客户根本查不出来东西,非常着急。后来在plus中执行select count(1) from fee,也特别慢,这张表一共才50w的数据。配置: Oracle 11G RAC 、linux redhat操作系统处理过程:原创 2016-03-11 13:50:26 · 42013 阅读 · 0 评论 -
Oracle的Merge into语法
MERGE INTO是Oracle 9i以后才出现的新的功能。那这个功能 是什么呢?简单来说,就是:“有则更新,无则插入”,用来合并UPDATE和INSERT语句.通过MERGE语句,根据一张表或子查询的连接条件对另外一张表进行查询,连接条件匹配上的进行UPDATE,无法匹配的执行INSERT。这个语法仅需要一次全表扫描就完成了全部工作,执行效率要高于INSERT+UPDATE原创 2016-03-11 17:27:40 · 18087 阅读 · 2 评论 -
记一次oracle表空间不足的错误
今天在和别人对接报文的时候,发现从昨天开始,报文没有接收成功,仔细看日志发现日志报错了: Caused by: java.sql.SQLException: ORA-01691: Lob 段 PAY.SYS_LOB0000092436C00015$$ 无法通过 1024 (在表空间 TS_COSCO_DEFAULT 中) 扩展查资料原因是:表空间满了。1.查数据库文原创 2016-03-29 12:05:31 · 4613 阅读 · 0 评论 -
Oracle 查看表空间的大小及使用情况sql语句
--1、查看表空间的名称及大小 SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size FROM dba_tablespaces t, dba_data_files d WHERE t.tablespace_name = d.tablespace_name GROUP BY t.tablespac转载 2016-03-29 12:21:28 · 6770 阅读 · 0 评论 -
oracle的rollup操作---按照小组进行分组,同时求总计
rollup配合goup by使用,照小组进行分组,同时求总计。可以提供信息汇总功能(类似于"小计")ROLLUP在数据统计和报表生成过程中带来极大的便利 rollup操作---按GROUP BY ROLLUP()本身是分组统计求和的意思 如果是ROLLUP(A, B, C)的话,首先会对(A、B、C)进行GROUP BY,然后对(A、B)进行GROUP B转载 2016-08-28 15:58:50 · 3776 阅读 · 0 评论 -
Oracle中利用undo进行数据的恢复操作
【说明】无意中看到一个同事的QQ留言上面写着“真累“,还没有过30分钟就接到这个同事的电话,如下:刚在做删除数据的时候,发现由于条件没有写好,导致删错了,有没有办法恢复;接到这个任务 ,首先是深深的感慨了一下:人在状态不好的情况下尽量多休息少做事,特别是涉及到很重要的事情。跟着同事确定了出现问题的时间点后,先是安慰一下,让他从那惶恐不安的心里恢复过来,然后开始了找寻数据的工作。【环转载 2016-11-15 09:48:42 · 2726 阅读 · 0 评论 -
使用expdp和impdp远程导入导出库
使用expdb ,impdp 导入导出库,首先在本地必须建立db_link才可导入导出,exp,imp 这两个命令无需建立db_link即可导入导出。一.远程导出库的步骤:1.在本地库的配置文件中加如配置:tnames.ora增加orcl = (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)原创 2017-01-16 11:43:32 · 11972 阅读 · 0 评论 -
IMPDP 多个表空间对象导入到一个表空间中
impdp yngtts/yngtts DIRECTORY=DATA_PUMP_DIR dumpfile=mydir:yngtts0514.dmp logfile=mydir:yngtts0514.log remap_schema=yngtts/yngtts remap_tablespace='(TS_YNGT:TS_YNGT,CWFTS:TS_YNGT,TS_EDIDB_DEFAULT:TS_原创 2017-05-14 17:16:38 · 9687 阅读 · 0 评论 -
oralce修改表空间为自动扩展
1.今天遇到一个数据库问题,数据库总是插入不了数据,总是报错:ORA-01653: 表 YNGTTS.T_EDI_STEP_LOG 无法通过 1024 (在表空间 TS_YNGT 中) 扩展......在网上查了查,是数据库的自动扩展没有开,已经满了,查了一下确实这样。以下为解决方法:1.数据文件自动扩展的好处1)不会出现因为没有剩余空间可以利用到数据无法写原创 2017-06-23 16:08:36 · 978 阅读 · 0 评论 -
impdp遭遇ORA-39001、ORA-39000,ORA-39142
转载地址: http://blog.csdn.net/wxl1314920/article/details/41892761expdp/impdp由于源数据版本高于目标数据库版本,遭遇ORA-39001、ORA-39000,ORA-39142,解决只需要expdp导出时加上目标数据的version,具体问题及解决如下:导入报错:[oracle@orcle02 ~]$ imp转载 2017-07-28 16:00:25 · 3370 阅读 · 0 评论 -
Oracle dblink详解(转)
oracle dblink 是干嘛的:比如现在有俩个数据库,都是单独的,如果我们现在登陆当前数据库,想访问另一个数据库,如果我们建了DBLINK我们就可以直接在当前数据库取访问另一个数据库。 如select * from user@xe 这样我们就可以直接访问另一个数据库的user表@真东方之子database link概述 database link是定义一个数据库到另一个数据库的路转载 2016-03-03 17:20:52 · 2388 阅读 · 0 评论 -
oracle中比较两表表结构差异和数据差异的方法
在工作中经常会遇到导数据的情况,有时候需要比较生产库和测试库的表结构是否有变化,找出差异,并且可以找出差异数据。分析:手工方式不可取,因为要比较的表结构比较多,不容易看出来,采取两表差集并集的方式查找。MINUS(差集):SQL中有一个MINUS关键字,它运用在两个SQL语句上,它先找出第一条SQL语句所产生的结果,然后看这些结果有没有在第二个SQL语句的结果 中。如果有的话,那这一笔原创 2016-03-03 15:44:09 · 6610 阅读 · 0 评论 -
Oracle创建删除用户、角色、表空间、导入导出数据库命令行方式总结
说明: 在创建数据库时输入的密码,是修改系统默认的密码,以system和sysman等系统默认身份登录时要输入的密码就是修改后的密码(创建数据库时输入的密码)<br />如果要创建新的用户就必须以system或者sysman(这二者的权限最大)的身份登录后才可创建<br />创建用户格式:create user 用户名 identified by 密码(例如:create user cht identified by cht;)<br />创建完成后,必须分配权限,否则连不上数据库和sqlplus。<br原创 2011-03-17 09:43:00 · 736 阅读 · 0 评论 -
oracle normal、sys、system、sysdba、sysoper&dba的区别
<br />一、sys和system用户区别<br />1)最重要的区别,存储的数据的重要性不同<br /> 【sys】所有oracle的数据字典的基表和视图都存放在sys用户中,这些基表和视图对于oracle的运行是至关重要的,由数据库自己维护,任何用户都不能手动更改。sys用户拥有dba,sysdba,sysoper等角色或权限,是oracle权限最高的用户。<br /> 【system】用户用于存放次一级的内部数据,如oracle的一些特性或工具的管理信息。system用户拥有普通dba角原创 2011-03-17 13:44:00 · 1259 阅读 · 1 评论 -
Oracle的left join中on和where的区别
<br />转贴这篇是因为今天我用到了left join里面的on 和where,原来用的时候只知道用on,没带过where 。更不知道它们的区别。<br /> <br /> <br />今天遇到一个求某月所有天数的统计结果,如果某日的结果是0也需要显示出来,即:<br />日期 交易次数 交易金额<br />2009-4-01 1 10<br />2009-4-02 2 20<原创 2011-05-11 11:38:00 · 1108 阅读 · 0 评论 -
Linux中oracle学习总结——解决backspace和上下键使用出现乱码
Linux中oracle学习总结——解决backspace和上下键使用出现乱码 Vi编辑器修改文件.bash_profile可解决backspace出现乱码问题 使用SecureCRT或是pietty_ch连接到一台安装有Oracle DB 10g的RHEL4.2的机器,linux使用的shell是默认的bash。 在bash提示符下,使用Del键或者Backspa转载 2015-08-18 17:47:36 · 1328 阅读 · 0 评论 -
Oracle的锁表与解锁
Oracle的锁表与解锁 SELECT /*+ rule */ s.username,decode(l.type,'TM','TABLE LOCK','TX','ROW LOCK',NULL) LOCK_LEVEL,o.owner,o.object_name,o.object_type,s.sid,s.serial#,s.terminal,s.machine,s.pr转载 2015-08-07 12:24:20 · 611 阅读 · 0 评论 -
oracle导入数据库步骤--impdp
LINUX下采用impdp方式导入数据库:1.创建表空间,用户,赋权限,创建目录create tablespace TS_DEFAULT datafile '/oradata/pay/pay.dbf' size 1g;create user pay identified by cosco default tablespace TS_DEFAULT;grant connect,res原创 2015-08-19 17:33:11 · 1390 阅读 · 0 评论 -
expdp\impdp及exp\imp
下面转载一篇网友的文章,非常详细:数据泵文件expdp介绍EXPDP命令行选项1. ATTACH该选项用于在客户会话与已存在导出作用之间建立关联.语法如下ATTACH=[schema_name.]job_nameSchema_name用于指定方案名,job_name用于指定导出作业名.注意,如果使用ATTACH选项,在命令行除了连接字符串和ATTACH选转载 2015-08-19 17:34:20 · 470 阅读 · 0 评论 -
LINUX安装Oracle11G数据库
一、修改操作系统核心参数在Root用户下执行以下步骤:1)修改用户的SHELL的限制,修改/etc/security/limits.conf文件输入命令:vi /etc/security/limits.conf,按i键进入编辑模式,将下列内容加入该文件。?1234567转载 2015-08-19 17:37:28 · 620 阅读 · 0 评论 -
LINUX安装ORACLE11G--注意事项
下面是网友总结的,非常详细:注意:1、Linux oracle数据库listener.ora存放路径cd /home/oracle/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora2、Linux oracle数据库tnsnames.ora存放路径cd /home/oracl原创 2015-08-19 17:42:57 · 1386 阅读 · 0 评论 -
Linux下启动Oracle服务和监听程序
su - oraclesqlplus /nologconnect /as sysdbastartuplsnrctl startoracle数据库是重量级的,其管理非常复杂,将其在linux平台上的启动和关闭步骤整理一下。安装完毕oracle以后,需要创建oracle系统用户,并在/home/oracle下面的.bash_profile添加几个环境转载 2015-10-13 17:19:43 · 480 阅读 · 0 评论 -
注意事项: Oracle Not Exists 及 Not In 使用
今天遇到一个问题,not in 查询失效,我以为是穿越了,仔细查了点资料,原来理解有误!select value from temp_a awhere a.id between 1 and 100and not exists(select * from temp_b b where a.value=b.value);这时能查出结果select value原创 2015-12-03 11:30:59 · 3931 阅读 · 1 评论 -
ORACLE UPDATE FROM 写法变通
最近更新数据用到upate set from 查资料才知道oracle中没有此写法,所以只能变通。网上的帖子这样写:1) 最简单的形式SQL 代码--经确认customers表中所有customer_id小于1000均为'北京'--1000以内的均是公司走向全国之前的本城市的老客户:)update customersset city_na原创 2015-12-03 14:17:09 · 1209 阅读 · 0 评论 -
oracle 10g将数据导入到指定表空间的步骤
--创建临时表空间 create temporary tablespace yhtemp tempfile 'D:/oracle/oradata/Oracle10g/yhtemp.dbf' size 50m autoextend on next 50m maxsize 20480m extent management local; --创建数据表空间 create tablespace yh原创 2011-03-17 09:27:00 · 1336 阅读 · 0 评论