应用dgmgrl实现fast_start failover后,客户端tns的配置
要实现用dgmgrl管理dataguard,须应定义db_unique_name参数,因而主备数据库从db_unique_name角度来说是不一致的。在主备数据库之间进行了switchover或failover后,如何做到不修改客户端的tns配置就能使客户机正常访问数据库,而无论当前应用的是主数据库还是备数据库。经测试,单纯添加IPADDRESS选项不能解决问题,估计是大多数情况下,执行切换后,主备数据库的lsnrctl服务都是完好的,而且数据库至少都处于mount状态的原因。试验了几种方式均未成功。后来发现DESCRIPTION配置可以写多项,一试,果然成功!以下是一个客户瑞tns的配置:[
Oracle 修改带数据的字段类型
由于需求变动,现要将一个类型NUMBER(8,2)的字段类型改为 char。大体思路如下:将要更改类型的字段名改名以备份,然后添加一个与要更改类型的字段名同名的字段(原字段已经改名),然后更新数据,最后删除改名备份的字段。以下操作在 Oracle 10.2.0.1.0 中通过。/*修改原字段名*/ALTER TABLE 表名 RENAME COLUMN 字段名 TO 字段名1;/*添加一个和原字段同名的字段*/ALTER TABLE 表名 ADD 字段名 VARCHAR2(30);/*将原来的数据更新到新字段中这是要注意,一定要显示进行数据类型转换(不同于MSSQL)*/UPDATE 表名 SET 字段名 = CAST(字段名1
oracle自增字段
oracle没有ORACLE自增字段这样的功能,但是通过触发器(trigger)和序列(sequence)可以实现。 假设关键字段为id,建一个序列,代码为: create sequence seq_ids_incrementminvalue 1 maxvalue 99999999 start with 1 increment by 1 nocache order; <!--[if !supportLineBreakNewLine]--> <!--[endif]--> 建解发器代码为: ------------------------------create or replace trigger tri_ids_increment before insert on loginuser for each row declare nextid number; begin IF :new.id IS NULL or :new.id=0 THEN select se
Oracle SQL对表的操作
alter table tbl_sys_role_permission drop column operator_id ; //Oracle中删除表中某列- -alter table table_name add (col1 type,col2 type); //添加某列(字段)- -COMMENT ON COLUMN TABLE_AAA.STOCKMAN IS '管理人员' ;//给列添加注释 ALTER TABLE TABLE_AAA ADD CONSTRAINT FK_TABLE_AAA_R_TABLE_BBB_S FOREIGN KEY (STOCKMAN) REFERENCES TABLE_BBB (ID)//给列添加外键 添加/删除主键(primary key)1、创建表的同时创建主键约束(1)无命名create table student (studentid int primary key not null,studentname varchar(8),age
使用adodb504a连接oracle9i
搭建好环境:安装apache2.2.8+oracle9i+php5.2.6下载adodb5.04a然后创建文件conn.php<?phpinclude('adodb5ADOdb.inc.php');$user = $_POST['user'];$pw = $_POST['password'];$conn = &ADONewConnection('odbc');$conn->Connect('oracle', 'scott', 'tiger', 'wyj'); # 不使用 tnsnames.ora$rs = $conn->Execute('select ename from emp');if (!$rs) print $conn->ErrorMsg();else while(list($eName) = $rs->FetchRow($rs)) { echo $eName; echo "<br />rn"; }?>以上是
Oracle exp/imp导出导入工具的使用
exp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移imp导入工具将EXP形成的二进制系统文件导入到数据库中.[@more@]一. 导出工具 exp1. 它是操作系统下一个可执行的文件 存放目录/ORACLE_HOME/binexp导出工具将数据库中数据备份压缩成一个二进制系统文件.可以在不同OS间迁移它有三种模式:a. 用户模式: 导出用户所有对象以及对象中的数据;b. 表模式: 导出用户所有表或者指定的表;c. 整个数据库: 导出数据库中所有对象。2. 导出工具exp交互式命令行方式的使用的例子$exp oa1/123@oracle连接到: Oracle Databas
Postfix 安裝
資料來源 : http://www.gentoo.org.tw/got-doc/postfix.xml內容: 1. Postfix 安裝手冊2. 建置一個完善的郵件伺服器3. 安裝 Xinetd4. 安裝 uw-imap5. 安裝 cyrus-sasl6. 安裝 Postfix7. 測試除錯[@more@]1. Postfix 安裝手冊什麼是 Postfix Postfix 是由 Wietse Venema's (http://www.porcupine.org/wietse/) 開發用來替代使用最廣的 Sendmail 程式;此外,Postfix 試圖在使用上更快速 、簡單管理及安全,同時與 sendmail 保持足夠的相容性而不打擾系統中已存在的使用者。 尤其近來 Sendmail 經常被發現 local root 的攻擊漏洞加上 Sendma
Question : ERROR 1130 (00000)
Question One: ERROR 1130 (00000): Host 'local' is not allowed to connect to this MySQL serverAnswer : grant all on *.* to root@'%' identified by '(yourpassword)';Question Two: configure: error: C++ compiler cannot create executablesAnswer : If you're on Ubuntu or Debian as the OP is, install the build-essential package, either through Synaptic or with apt-get install build-essential.[@more@]
硬盘中安装Linux操作系统
通过Grub(多系统引导管理器)来安装 本人最近摸索Linux系统,想在本机上安装双系统,但我这老爷机上没有软驱,没有刻录机,下载的ISO文件只能存在硬盘上,也只能通过硬盘来安装,在各大Linux的BBS上看了不少关于从硬盘安装Linux系统的贴子,试了N次不成功,最后我对所看贴子所述的内容进行的一些修改,可能是因为Linux系统版本更新了要作一些修改,也许是多系统引导安装程序有新版本而需要作一些修改,现在就用目前最新的版本来说明在硬盘上安装Linux系统的方法,我认为这是最简单的了! 1、首先你需要从网络上下载Linux系统的ISO文件,比如
Ubuntu smtp验证配置
在配置sendmail 的smpt验证时,碰到了不少麻烦事,最后总算搞定了。有时只是一些简单的操作,却是因为没有文档,导致配置工作的进展困难。这里记录下一些配置过程中忽略的小事情。[@more@]sudo apt-get install sendmail(其中已经包含了sendmail-bin)sudo apt-get install sasl2-bin配置主要集中在sendmail.mc文件。a)将MTA-v4的监听地址去掉,这样就可以监听所有地址。修改后如下:dnl DAEMON_OPTIONS(`Family=inet6, Name=MTA-v6, Port=smtp, Addr=::1')dnlDAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp')dnldnl DAEMON_OPTIONS
IPTABLES-SAVE手册页&IPTABLES-RESTORE手册页
总览 iptables-save [-c] [-t table] 说明 通过简单的语法格式把一个IP TABLE的内容转储到STDOUT(标准输出).可以 用由shell提供I/0重定向写到一个文件中 -c, --counters 输出中包括所有包和字节计数器的当前值 -t, --table tablename 仅输出指定表名的那个表,若没有指定,将输出所有可用的表总览 iptables-restore [-c] [-n] 说明 iptables-restore的作用是通过STDIN(标准输入)上指定的数据来恢复IP Table。 由你的shell提供的I/O重定向功能从一个文件中读取。 -c, --counters 恢复所有包和字节计数器的当前值 -n, --noflush 不删除表中以
Ubuntu--iptables手册
总览 用iptables -ADC 来指定链的规则,-A添加 -D删除 -C 修改 iptables - [RI] chain rule num rule-specification[option] 用iptables - RI 通过规则的顺序指定 iptables -D chain rule num[option] 删除指定规则 iptables -[LFZ] [chain][option] 用iptables -LFZ 链名 [选项] iptables -[NX] chain 用 -NX 指定链 iptables -P chain target[options] 指定链的默认目标 iptables -E old-chain-name new-chain-name -E 旧的链名 新的链名 用新的链名取代旧的链名[@more@]说明 Iptalbes 是用来设置、维护和检查Linux内核的IP包过滤规则的
iptables的用法
[yjwang@ubuntu:~$]# iptables [-t filter] [-AI INPUT,OUTPUT,FORWARD]> [-io interface] [-p tcp,udp,icmp,all] [-s IP/network] [--sport ports]> [-d IP/network] [--dport ports] -j [ACCEPT,DROP]參數說明:-A :新增加一條規則,該規則增加在最後面,例如原本已經有四條規則, 使用 -A 就可以加上第五條規則!-I :插入一條規則,如果沒有設定規則順序,預設是插入變成第一條規則, 例如原本有四條規則,使用 -I 則該規則變成第一條,而原本四條變成 2~5 INPUT :規則設定為 filter table 的 INPUT 鏈 OUTPU
PHP中动态HTML的输出技术
转载自:http://www.programbbs.com/doc/1147.htm你可以在php程序中的任何地方使用 echo "hello world!"; 来输出你想输出的内容。 不过你将遇到以下麻烦: 1 - 当你试图在hello和world之间加入两个(或两个以上)空格, 你使用: echo "hello world!"; 你得到的输出还是一个空格,或者你在行首加入一个空格, 你的空格也将被忽略。 2 - 更糟的是输出用户输入的内容时,有心或无意的用户输入将 使你的输出变的一团糟,甚至给其他用户带来麻烦。 比如: <form action="output.php"> <textarea name=