自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

Zhu_Julian's Notes (朱显杰的技术博客)

技术沉思录,性能优化,架构设计,DBA感想

  • 博客(17)
  • 资源 (1)
  • 收藏
  • 关注

原创 [Oracle] 浅谈Sequence(序列)

Oracle的Sequence是一种数据库对象,它可以生成有序数字,主要用于主键的自动生成。如果没有Sequence,主键的自动生成必须得在代码逻辑里实现,大致过程是:获取当前主键值,新主键值=当前主键值+增量。如果多个用户同时请求新主键,则会产生并发等待,影响效率,Sequence就是用来解决这个问题。创建SequenceCREATE SEQUENCE emp_sequenc

2013-07-31 22:48:14 3741 1

原创 [Oracle] Data Pump 详细使用教程(5)- 命令交互模式

当我们起了一个datapump job之后,可以通过v$session_longops查看当前进度。USERNAME - job owner OPNAME - job name TARGET_DESC - job operation SOFAR - megabytes transferred thus far during the job TOTALWORK - estimat

2013-07-31 16:11:37 3270

原创 [Oracle] Data Pump 详细使用教程(4)- network_link

expdp的network_link我们知道,expdp默认是导出本地数据库,network_link的作用是导出远程数据库到本地服务器上,其步骤如下:术语说明:源数据库:远程数据库目标数据库:本地数据库(即expdp客户端所在的服务器)1. 在目标数据库端添加源数据库的连接字符串至tnsnames.ora:source_db = (DESCRI

2013-07-31 13:09:08 3336

原创 [Oracle] Linux下开机自动启动Oracle的设置

上周五,因为办公室突然停电,服务器重启后,数据库并没有跟着重启,我才发现原来所有的数据库都没有设置开机自动重启,为了防止以后三更半夜服务器重启时,不会有电话把我从睡梦中吵醒,让我手动启动数据库,我决定花点时间研究下Oracle随Linux自动重启的设置,具体方法如下:1. 修改oratab (root用户执行)/etc/oratab的配置格式如下:$ORACLE_SID:$ORACLE

2013-07-29 10:34:23 3271

原创 [Oracle] Linux下手动创建数据库过程

今天发现一个Oracle测试库的字符集设置不正确,原本的字符集是UTF-8,正确的字符集应该是ZHS16GBK,因为UTF-8是ZHS16GBK的超集,无法修改,只能重建数据库,幸好该测试库上还没有数据。虽然用DBCA也可以创建数据库,但我个人更喜欢手工创建数据库,其主要步骤如下(数据库版本11.2):1. 设置ORACLE_SID默认的ORACLE_SID是orcl,我个人强烈建议起

2013-07-26 09:02:54 5109

原创 [Linux] rlwrap - 解决Linux下sqlplus退格、上翻键乱码问题

在Linux下使用sqlplus你会发现:退格键无法正常使用(乱码),上翻键也无法正常显示历史功能,非常讨厌!为了让退格键和上翻键在sqlplus里正常发挥它的作用,我们必须安装一个软件 - rlwrap1. 首先,从http://utopia.knoware.nl/~hlub/uck/rlwrap/下载安装包,上传到linux服务器上2. 以root用户解压缩安装tar -zxv

2013-07-25 12:41:47 3414

原创 [Oracle] Data Pump 详细使用教程(3)- impdp

导入模式和导出模式一样,以下5种模式也是互斥的。Full模式设置Full=yes即可,如果没有DATAPUMP_IMP_FULL_DATABASE角色,只能导入到自己schema下的数据 Schema模式设置Schema参数,语法如下SCHEMAS=schema_name [,...]下面这个例子导入hr数据到hr schem

2013-07-24 13:18:01 3992 1

原创 [Oracle] Data Pump 详细使用教程(2)- expdp

导出模式有以下5种导出模式,它们之间是互斥的,不可以同时使用,注意:有些schemas是不能被导出的,如SYS, ORDSYS, and MDSYS等。Full模式设置Full=y(默认为n),导出全库,例子:> expdp user_name FULL=y DUMPFILE=expdat.dmp DIRECTORY=data_pump_dir LOGF

2013-07-24 11:29:16 4338

原创 [Oracle] Data Pump 详细使用教程(1)- 总览

从10g开始,Oracle提供更高效的Data Pump(即expdp/impdp)来进行数据的导入和导出,老的exp/imp还可以用,但已经不建议使用。注意:expdp/impdp和exp/imp之间互不兼容,也就是说exp导出的文件只能用imp导入,expdp导出的文件只能用impdp导入。Data Pump的组成部分Data Pump有以下三个部分组成:客

2013-07-23 23:12:35 4689

原创 [Oracle] expdp ORA-39006, ORA-39065 的解决办法

新公司上班第二天,接到一个任务:把生产库上的数据迁移到开发库上,当我兴致冲冲的用expdp导出数据时,出现如下的internal error,难怪之前的DBA放着expdp/impdp这个利器不用,一直要老的exp/imp。ORA-39006: internal errorORA-39065: unexpected master process exception in DISPATCHO

2013-07-23 16:29:03 10359 2

原创 [Python] 利用commands模块执行Linux shell命令

用Python写运维脚本时,经常需要执行linux shell的命令,Python中的commands模块专门用于调用Linux shell命令,并返回状态和结果,下面是commands模块的3个主要函数:1. commands.getoutput('shell command')执行shell命令,返回结果(string类型)>>> commands.getoutput('pwd')

2013-07-22 22:18:01 50080 2

原创 [Oracle] 把表和索引放在不同的表空间里

Oracle中并没有区分表空间里放的是表还是索引,所有当数据量比较小时,完全可以把表和索引放在同一个表空间里,但随着数据量的增大,最好还是把表和索引分开存储在不同的表空间里,因为:1)提高性能:尽量把表和索引的表空间存储在不同在磁盘上,把两类不同IO性质的数据分开放,这样可以提高磁盘的IO总体性能;2)便于管理:试想一下,如果索引的数据文件损坏,只要创建索引即可,不会引起数据丢失的问题。

2013-07-13 02:58:31 9397 2

原创 [Oracle] dbms_metadata.get_ddl的用法总结

dbms_metadata.get_ddl()用于获取对象的DDL,其具体用法如下。注意:在sqlplus里,为了更好的展示DDL,需要设置如下参数:set line 200set pagesize 0set long 99999set feedback offset echo off1)获得表、索引、视图、存储过程、函数的DDLselect dbms_metadata.g

2013-07-12 03:21:25 4261

原创 [Oracle] Data Guard CPU/PSU补丁安装教程

在Primary停止日志传输服务;关闭Standby数据库,在Standby的软件上打补丁(注意:不需要为Standby数据库打补丁),启动standby为mount状态,不启用managed recovery;关闭Primary,在Primary的软件和数据库本身都打上补丁;启动Primary数据库,重新开启日志传输服务;在Standby启动Redo Apply,这样Primary上补丁脚本就会自动同步至Standby;检查Primary和Standby是否都已安装补丁。

2013-07-10 06:25:36 3604

原创 [Tools] SecureCRT文件传输模式介绍

如下图所示,SecureCRT有5种文件传输模式。1)ASCII:最快的传输模式,但只能传文本2)Binary:只能传二进制文件3)Xmodem:非常古老的传输协议速度较慢,但由于使用了CRC错误侦测方法,传输的准确率可高达99.6%。4)Ymodem:Xmodem的改良版,速度比它快5)Zmodem:Zmodem采用了串流式(streaming)传输方式,传输速度较快

2013-07-10 02:37:46 7806 2

原创 [Oracle] CPU/PSU补丁安装教程

什么是CPU/PSUOracle CPU的全称是Critical Patch Update, Oracle对于其产品每个季度发行一次安全补丁包,通常是为了修复产品中的安全隐患。Oracle PSU的全称是Patch Set Update,Oracle对于其产品每个季度发行一次的补丁包,包含了bug的修复。Oracle选取被用户下载数量多,且被验证过具有较低风险的补丁放入到每个季度的

2013-07-05 04:19:25 6190

原创 [Oracle] 使用触发器实现IP限制用户登录

在Oracle里,不像MySQL那样方便,可以直接在用户上进行IP限制,Oracle要实现用户级别的IP限制,可以使用触发器来迂回实现,下面是一个触发器的例子:create or replace trigger logon_ip_controlafter logon on databasedeclare ip STRING(30); user STRING(30);beginS

2013-07-03 11:30:40 5142

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除