ORACLE实际开发及运维知识分享
本专栏主要内容涉及oracle相关概念,相关参数讲解,数据库备份恢复,数据库开发等一系列ORACLE知识总结。
EvanJiemo
一个热爱软件的人
展开
-
针对数据库的高级函数学习与整理
今天我们来整理一些比较常用,但有时候又不是很熟悉的函数,其实很多功能我们都可以通过比较复杂的SQL来实现,但是可能就会有多层的嵌套的情况,而且往往随着数据量的增长,性能会非常差,所以未避免这种情况,我们需要尽可能的使用数据库为我们提供的数据库函数或功能来实现,今天我们就来说说4个比较常用的功能,每一个都很实用,下面我们就详细的来说明一下.第一个功能,with as(),以前我们写视图,为了避免...原创 2020-05-06 11:54:44 · 435 阅读 · 0 评论 -
oracle11之Database links
在业务开展过程中,历史遗留的系统往往因为设计上的欠缺导致接口设计不当或根本就没有设计对接接口,那么当需要数据间整合的时候就需要对数据进行整合,单这时候确没有数据接口怎么办,那么我们只能通过数据库直连的方式完成数据间的整合,oracle为我们提供了database links服务。所以我们今天就来讲讲database links服务有什么用,有哪些功能,能为我们的工作提供什么样的帮助。原创 2017-09-11 11:12:01 · 749 阅读 · 0 评论 -
oracle11g安装中遇到---将配置数据上载到资料档案库时出错
在配置生产环境中的ORACLE环境的时候,系统全新安装依然遇见了错误,是EM的错误,在ORACLE官网查询错误,找到了错误的原因及解决方案,具体说明如下,问题做个记录,方便日后问题解决及其他人员问题帮助。Error Uploading Configuration Data To The Repository" whenconfiguring dbconsole [ID 1233913.1]原创 2017-11-07 10:02:41 · 8983 阅读 · 0 评论 -
Oracle AMM学习总结
ORACLE11G之后,SGA和PGA有了新的内存管理方式,AMM,默认情况下,Oracle 11g是使用AMM的。我们在安装过程中,指定Oracle使用内存的百分比,这个取值就作为MEMORY_TARGET和MEMORY_MAX_TARGET的初始取值使用。如果这两个参数设置为非零取值,那么Oracle就是采用AMM管理策略的。 如何查看数据库是否启用了AMM,原创 2017-02-06 16:33:48 · 2243 阅读 · 0 评论 -
ORACLE表空间添加数据文件注意事项
一般我们添加数据文件我们需要指导一些参数,需要注意,在一个表空间中我们配置的数据文件尽量保证参数一致。今天我们主要讲解一下数据文件的参数1.存储类型---其中有两个(自动存储和文件存储)我们一般使用自动存储2.磁盘组------一般就是我们默认创建的磁盘组3.模板---------这个一般默认就好4.别名目录---这个一般就是创建表空间在磁盘组中的目录5.别名---------原创 2017-04-06 10:58:40 · 2516 阅读 · 0 评论 -
实际工作中ORA-01578: ORACLE data block corrupted遇到问题的解决方式
在实际项目生产环境中,外部的不可抗外部环境影响系统的正常运行往往很难控制,这样我们就需要建立一套合理的解决方案备案库来解决相应的问题,今天我们就来说说数据库文件损坏的问题ORA-01578: Oracle data block corrupted (file # 5, block #27059)SELECT SEGMENT_TYPE,OWNER||'.'||SEGMENT_NAME F原创 2017-05-08 14:07:53 · 6414 阅读 · 0 评论 -
Oracle性能优化之统计分析
Statistic 对oracle 是非常重要的。 它会收集数据库中对象的详细信息,并存储在相应的数据字典里。 根据这些统计信息, optimizer 可以对每个SQL 去选择最好的执行计划。所以我们每天应该设定一个计划来定时统计分析相关信息。具体计划如下:create or replace procedure P_ANALYZE_TABLE is cursor loop_tmp is S原创 2017-08-21 09:18:40 · 1131 阅读 · 0 评论 -
ORACLE性能优化主意事项
实际项目使用过程中,数据库主要起着数据存储的作用,但是随着数据库性能的不断提升,数据库的计算能力也在不断加强,有效的设计可充分发挥数据库的性能,所以数据库的优化起到了重要的作用,实际中的优化主要是三方面的优化:1,数据库参数的优化,优化效果不明显。2,数据结构设计优化,如果没有设计良好的数据结构,性能就没有提高可言,所以良好的数据库设计是一切应用的开始。3,语句级优化,实际影响效率的主原创 2014-03-04 16:51:29 · 831 阅读 · 0 评论 -
ORACLE生产中性能监控中总结的经验
ORACLE数据库在我们部署之后,往往会随着系统的升级,数据量的增大以及设计的缺陷导致系统的性能会出现不稳定,资源争用,阻塞等一系列的问题。会导致系统的可用性变得越来越低。所以为了保证系统的长期稳定可靠,高性能的工作,我们就需要对数据库进行相应的性能监控。那么监控策略是什么呢?是出现问题才看性能情况呢还是说24小时监控呢,其实都不是很现实的问题,那么我们需要做的就是对系统的故障时间,系统的操作,并原创 2017-01-19 09:52:30 · 779 阅读 · 0 评论 -
数据库表结构查询
1,SQL SERVER根据表明查询表结构select name from syscolumns whereid=object_id('caigou')根据表明查询表结构及数据类型Select a.nameas colname,b.nameas typenamefrom syscolumnsa,systypesb where a.xusertype原创 2014-03-11 16:39:08 · 777 阅读 · 0 评论 -
远程数据库连接不通问题解决步骤
在日常开发中,数据库实例往往部署在服务器上,而我们通常是通过客户端连接服务器进行数据库开发,而有时新配置的客户端无法连接到服务器,主要从以下几个方面进行问题排除:1,端口是否正确并启用命令行使用 netstat -a查看端口号是否启用,然后远程通过telnet ip地址 端口号,查看端口号是否可以连接。如果不可以连接则查看防火墙是否拦截。2,数据库的远程访问是否打开。3,数据原创 2014-03-13 09:21:02 · 3291 阅读 · 0 评论 -
ORACLE跨版本数据库备份
企业在开发和实施过程中,可能会存在数据库版本不一致的情况,这样的化通过不同版本的备份命令exp,导出的备份数据就无法直接在不同版本的数据库进行数据恢复,导致备份无效,所以我们可以通过工具PLSQL来进行数据备份,先导出表结构对象,在导出表数据。 表结构对象就是创建对象的语句,就相当于重新创建,表数据就是纯粹的表数据,通过这个备份方式可有效解决数据库不同版本实施过程中数据备份及恢复中的差异。原创 2014-03-13 16:48:13 · 1462 阅读 · 0 评论 -
ORACLE数据库实例服务无法启动问题解决思路
在实际的服务器运行中,随着时间的推移,总是会伴随着各种各样的问题,可能是服务器本身的问题,也有人为误操作的失误,但常见的问题就是服务原创 2014-03-14 08:06:23 · 7231 阅读 · 0 评论 -
ORACLE常用日期格式化方式
oracle数据库开发常用日期主要是中文标准,中文下标准时间格式是yyyy-MM-dd,中文下常用日期使用方式如下;1,select to_char(sysdate,'yyyy') day from dual---------返回当前年2,select to_char(sysdate,'MM') day from dual---------返回当前月份,2位的数字3,select to原创 2014-03-14 10:33:13 · 1713 阅读 · 0 评论 -
ORACLE结构化总结
1,TableSpaces表空间在oracle的表空间中,只存放了三部分内容,分别是,表,索引和簇。2,user用户用户共包括四部分,分别是,对象,对象权限,系统权限和角色。3,profilesprofiles文件是口令和资源限制的配置集合,包括CPU的时间、I/O的使用、空闲时间、连接时间、并发会话数量、密码策略等对于资源的使用profile可以做到控制会话级别或语句调用级别原创 2014-03-17 08:49:52 · 1094 阅读 · 0 评论 -
oracle结构学习小结
1,查看系统中有哪些表空间原创 2014-04-22 10:13:37 · 781 阅读 · 0 评论 -
Linux下安装ORACLE步骤
本文档时根据原创 2014-04-23 14:11:20 · 862 阅读 · 0 评论 -
ORACLE提取字符串中"汉字"串的解决办法
我在在实际工作中常常要使用去特殊字符的功能,特别是插入到数据库中的数据,我们为了保证数据的质量,往往需要对数据进行清洗,就是去掉特殊字符,我们处理问题的思路是:判断字符串中的每个字符是不是中文,如果是中文,将他们按照顺序连接起来,如果不是,不要。根据实际业务需求,共有2中解决方案:方案一:使用数据库自带函数length,lengthb。中文下length返回的是字符个数,中文占1字原创 2014-11-28 10:15:02 · 12169 阅读 · 2 评论 -
ORACLE自动备份脚本DMP文件名
在日常生活中,我们常常需要进行数据库的自动备份,按照实际的需求进行数据库的自动备份。文件名:data_%date:~0,4%%date:~5,2%%date:~8,2%.dmpCMD获取当前系统日期的命令是---%date:~0,4%%date:~5,2%%date:~8,2%格式为20150204.原创 2015-02-05 16:46:03 · 1453 阅读 · 0 评论 -
JAVA应用当中的数字格式化之科学计数法转数字
JAVA实现方式:import java.math.BigDecimal;public class Aaa { public static void main(String[] args) { String sjiachun = "2.5000000000000001E-2"; BigDecimal db = new BigDecimal(sjiachun); String原创 2015-08-18 09:08:36 · 5064 阅读 · 0 评论 -
数据库及实例信息管理
日常工作中我们活多或少都会接触数据库,特别是企业级数据库oracle,我们一般是单数据库多实例,一般小型系统默认数据库名和实例名想通就好,但是当应用越来越大,数据库实例越来越多,我们可能就会将数据库名和实例名混淆,导致各种问题的出现,那么ORacle有什么帮助么?回答是有,oracle为我们提供了各种查询数据库基础信息的表,今天我们就说说如何查询数据库及实例的相关信息表。1,数据库信息表v原创 2015-09-07 13:55:41 · 777 阅读 · 0 评论 -
数据库常用系统表整理
1,查询当前用户所具有的表select * from dba_tables t where t.tablespace_name='USERS' and t.owner='USERNAME'2,查询当前用户所具有的视图select * from dba_views t where t.owner='USERNAME'3,查询当前用户所具有的存储过程select * fr原创 2015-09-07 15:09:15 · 1021 阅读 · 0 评论 -
Oracle常用系统表汇总整理
在说常用的系统表之前,先说说开发规范,我们在做开发的时候,我们都会遵守相关的约定-----开发规范,同样对象的命名也有规范,数据库也不例外,ORACLE也不例外,遵守现在的主流的命名规范,常用的前缀主要有以下6个。1, dba_开头的系统表 dba_users数据库用户信息 dba_segments 表段信息 dba_extents 数据区信息 d原创 2015-09-08 09:36:26 · 492 阅读 · 0 评论 -
Oracle数据库分页
select * from (select rownum r ,t1.* from tableName t1 where rownum 10;原创 2015-09-16 14:27:10 · 369 阅读 · 0 评论 -
Oracle11G新增Impdp/Empdp备份恢复命令使用详解
在Oracle11G之前我们通常的备份和恢复策略用的可能都是imp/emp简单快速,上手方便,当时当上了11G之后,多出了一个Impdp/Empdp命令,这俩命令的出现主要是为了解决Oracle11G在使用上一些差别而出现的。在Oracle11g中,exp默认是不能导出空表,用传统的exp/imp比较麻烦,所以出现了。 我们通常使用的时候,都是将表结构建立在用户的下面原创 2015-10-19 13:49:34 · 3907 阅读 · 0 评论 -
Linux安装oracle常用命令
检查的命令内存# grep MemTotal /proc/meminfo交换空间# grep SwapTotal /proc/meminfo磁盘空间# df -ah查看环境变量是否完成#env | grep ORA查询软件包rpm -qa | grep 软件包名称修改内核参数root用户:修改 /etc/sysctl.conf 文件,加上如下原创 2015-11-14 15:47:38 · 482 阅读 · 0 评论 -
Oracle表空间管理
1,Oracle表空间物理存放文件位置 用SYS登陆SQLPLUS,select t1.name,t2.name from v$tablespace t1,v$datafile t2 where t1.ts# = t2.ts#;1、查看表空间的名称及大小 SQl > SELECT t.tablespace_name, round(SUM(bytes / (1024 *原创 2015-11-25 13:34:02 · 415 阅读 · 0 评论 -
ORACLE动态游标及动态SQL使用实例
create or replace procedure AAA(table_val in varchar2,table_result in varchar2)is--游标结果集 t_fproductid varchar2(50); t_fproductid_fnumber varchar2(50);--动态游标 TYPE My_CurType IS REF CURSOR; C原创 2016-06-24 15:18:46 · 1164 阅读 · 0 评论 -
整理ORACLE官网Linux X86-64系统安装步骤
1,硬件配置grep MemTotal /proc/meminfouname -mgrep SwapTotal /proc/meminfofreedf -h /dev/shm/2,内核需求On Red Hat Enterprise Linux 62.6.32-71.el6.x86_64 or laterOn Red Hat Enterpr原创 2016-08-23 10:33:12 · 1201 阅读 · 0 评论 -
ORACLE11G数据备份恢复注意事项
数据库在信息爆发的当前正扮演者越来越重要的角色,因为数据库一旦停止运行,整个应用基本就处于停用状态,所以保证数据库的稳定可靠是应用运行的最基本最核心的问题。所以正确做好数据库的备份及恢复非常重要,那么我们就来讲讲数据库的一些特征。1,oracle数据库具有版本的导入导出的依赖性,就是向下兼容性,即高版本可以导入低版本数据,但是低版本无法导入高版本数据。2,imp/exp和impdp/exp原创 2016-10-08 14:38:46 · 2313 阅读 · 0 评论 -
Oracle表空间的管理
数据库最重要的功能就是数据存储,其中Oracle是一个非常重量且非常灵活的数据库系统,我们在使用Oracle的时候,Oracle也提供了非常灵活的处理数据的方式,那就是表空间(数据文件),具体概念这里就不详细讲解了,因为概念是了解一个数据库的基础,这里我们直接讲下数据存储的原理。先不说数据库,我们先拿一个简单的普通文件管理来进行原理性的入门讲解。 我们日常工作都会原创 2016-10-09 13:36:28 · 509 阅读 · 0 评论 -
Oracle11G impdp,empdp导入导出数据库操作流程
数据库顾名思义就是存储数据的仓库,所以重要性不言而喻,所以我们队数据库需要做相应的保护策略,数据备份就是其中最基本也是最重要的一环,今天我们就来说一说数据备份的流程是什么?我们在做任何工作的时候,我们都需要一个标准的工作流程。数据库备份和恢复也存在标准的流程,今天我们主要说说数据库恢复的流程。恢复流程主要有以下几个步骤:1,数据库安装 数据库的安装就不多说了,作为一个数据库管理人原创 2016-12-13 11:07:40 · 6853 阅读 · 0 评论 -
Oracle动态获取表结构的应用
在开发中,我们往往希望能够根据SQL语句自动生成对应的表,这时候我们就需要动态的知道表结构,这样我们就能够动态的知道我们的表的结构。而且可以在代码中动态的生成灵活的表。--该语句是获取表的字段名称,字段类型,数据长度,字段序号(建立表的时候指定的字段顺序)select t.COLUMN_NAME,t.DATA_TYPE,t.DATA_LENGTH,t.COLUMN_ID from user_原创 2016-12-13 14:35:15 · 963 阅读 · 0 评论 -
ORACLE RAC集群开关机顺序
当前RAC环境使用的为共享ASM资源组正常关机的顺序应该为 关闭数据库(oracle用户),关闭集群( root 用户),关闭操作系统( root 用户) (如需存储下电,完成以上操作后关闭存储)每一个过程根据系统运行的情况,需3-10分钟不等正常开机的顺序应该为 (如存储为关闭状态,先将存储开机,存储开机后如需要修改配置,需要使用VNXe connection utlity软件,如有原创 2016-12-23 15:33:11 · 7475 阅读 · 0 评论 -
Oracle常用小工具集合(生产积累)
在日常系统维护过程中,我们往往会经常要用到一些ORACLE常用参数,亦或是一些我们业务中的特殊场景,所以我们要养成复用的思想,我们在面向对象的世界,遨游在复用的大海中,其实思想是一样的,数据库中我们一样可以复用,所以我们进行就形成自己的知识库,记录我们常用的知识库。1、查看表空间的名称及大小 SQl > SELECT t.tablespace_name, round(SUM(bytes原创 2016-12-23 15:45:26 · 628 阅读 · 0 评论 -
Oracle表分析
create or replace procedure P_ANALYZE_TABLE is cursor loop_tmp is SELECT 'ANALYZE TABLE '||TABLE_NAME||' COMPUTE STATISTICS' dynamicSql FROM USER_TABLES;begin for tmp in loop_tmp loop execute原创 2017-01-05 16:31:32 · 710 阅读 · 0 评论