如何对Oracle 11g for linux X86的SILENT进行安装

首先是检查系统硬件情况:

代码:
[code]
[root@enterprice64 ~]# grep MemTotal /proc/meminfo

MemTotal: 8178836 kB

[root@enterprice64 ~]# grep SwapTotal /proc/meminfo

SwapTotal: 8385888 kB

[root@enterprice64 ~]# free

total used free shared buffers cached

Mem: 8178836 5297744 2881092 0 122512 4773424

-/+ buffers/cache: 401808 7777028

Swap: 8385888 0 8385888

[root@enterprice64 ~]# df -k /dev/shm

Filesystem 1K-blocks Used Available Use% Mounted on

tmpfs 4089416 0 4089416 0% /dev/shm

[root@enterprice64 ~]# df -k /tmp

如何解决Oracle数据库TNS常见错误

1、ORA-12541:TNS:没有监听器

原因:没有启动监听器或者监听器损坏。若是前者,使用命令net start OracleOraHome10gTNSListener(名字可能有出入)即可;如果是后者,则使用“Net Configuration Assistant”工具向导之“监听程序配置”增加一个监听器即可(基本不用写任何信息,一路OK。在添加之前可能需要把所有的监听器先删!)

2、ORA-12500:TNS:监听程序无法启动专用服务器进程或ORA-12560:TNS:协议适配器错误

原因:ORACLE的数据库服务没有启动。使用命令net start ORACLESERVICEORADB(ORADB为数据库名字)即可。如果仍没有解决,请继续向下看。

3、如果数据库服务启动失败,则很有可能是其注册表项值损坏,最好的做法是以下两步:

1)ORADIM -DELETE -SID oradb 删除数据库服务项

2)ORADIM -NEW -SID oradb 新增数据库服务项

注:这个过程中如果出错,就重启计算机!

4、ORA-12154:TNS:能解析服务名

如何处理海量数据

在实际的工作环境下,许多人会遇到海量数据这个复杂而艰巨的问题,它的主要难点有以下几个方面:

一、数据量过大,数据中什么情况都可能存在。

如果说有10条数据,那么大不了每条去逐一检查,人为处理,如果有上百条数据,也可以考虑,如果数据上到千万级别,甚至过亿,那不是手工能解决的了,必须通过工具或者程序进行处理,尤其海量的数据中,什么情况都可能存在,例如,数据中某处格式出了问题,尤其在程序处理时,前面还能正常处理,突然到了某个地方问题出现了,程序终止了。

二、软硬件要求高,系统资源占用率高。

对海量的数据进行处理,除了好的方法,最重要的就是合理使用工具,合理分配系统资源。一般情况,如果处理的数据过TB级,小型机是要考虑的,普通的机子如果有好的方法可以考虑,不过也必须加大CPU和内存,就象面对着千军万马,光有勇气没有一兵一卒是很难取胜的。

三、要求很高的处理方法和技巧。

这也是本文的写作目的所在,好的处理方法是一位工程师长期工作经验的积累,也是个人的经验的总结。没有通用的处理方法,但有通用的原理和规则。

下面我们来详细介绍一下处理海量数据的经验和技巧:

一、选用优秀的数据库工具

深入探讨搭建数据仓库过程中应当遵循的方法和原则

一、数据仓库的架构

数据仓库(Data Warehouse \ DW)是为了便于多维分析和多角度展现而将数据按特定的模式进行存储所建立起来的关系型数据库,它的数据基于OLTP源系统。数据仓库中的数据是细节的、集成的、面向主题的,以OLAP系统的分析需求为目的。

数据仓库的架构模型包括了星型架构(图二:pic2.bmp)与雪花型架构(图三:pic3.bmp)两种模式。如图所示,星型架构的中间为事实表,四周为维度表,类似星星;而相比较而言,雪花型架构的中间为事实表,两边的维度表可以再有其关联子表,从而表达了清晰的维度层次关系。

从OLAP系统的分析需求和ETL的处理效率两方面来考虑:星型结构聚合快,分析效率高;而雪花型结构明确,便于与OLTP系统交互。因此,在实际项目中,我们将综合运用星型架构与雪花型架构来设计数据仓库。

那么,下面我们就来看一看,构建企业级数据仓库的流程。

二、构建企业级数据仓库五步法

(一)、确定主题

即确定数据分析或前端展现的主题。例如:我们希望分析某年某月某一地区的啤酒销售情况,这就是一个主题。主题要体现出某一方面的各分析角度(维度)和统计数值型数据(量度)之间的关系,确定主题时要综合考虑。

使用Oracle数据库过程中最常碰到的几个错误

1、ORA-12541:TNS:没有监听器

原因:没有启动监听器或者监听器损坏。如果是前者,使用命令net start OracleOraHome81TNSListener(名字可能有出入)即可;如果是后者,则使用“Net8 Configuration Assistant”工具向导之“监听程序配置”增加一个监听器即可(基本不用写任何信息,一路OK。在添加之前可能需要把所有的监听器先删除!)

2、ORA-12500:TNS:监听程序无法启动专用服务器进程

ORA-12560:TNS:协议适配器错误

原因:ORACLE的数据库服务没有启动。使用命令net start ORACLESERVICEORADB(ORADB为数据库名字)即可。如果仍没有解决,请继续向下看。

3、如果数据库服务启动失败,则很有可能是其注册表项值损坏,最好的做法是以下两步:

1)ORADIM -DELETE -SID oradb 删除数据库服务项

2)ORADIM -NEW -SID oradb 新增数据库服务项

注:这个过程中如果出错,就重启计算机!

4、ORA-12154:TNS:能解析服务名

如何在Oracle中移动数据文件

一.移动数据文件:

– 可以用ALTER DATABASE,ALTER TABLESPACE两种方法移动数据文件。

1. ALTER DATABASE方法;

– 用此方法,可以移动任何表空间的数据文件。

STEP 1. 下数据库:

$ sqlplus /nolog 

SQL> CONNECT INTERNAL; 

SQL> SHUTDOWN; 

SQL> EXIT; 

STEP 2.用操作系统命令移动数据文件:

– 将数据文件 ‘test.ora’ 从/ora/oracle/data1目录移动到/ora/oracle/data2目录下:


$ mv /ora/oracle/data1/test.ora /ora/oracle/data2 

STEP 3. Mount数据库,用ALTER DATABASE命令将数据文件改名:
[code]
$ sqlplus /nolog

SQL> CONNECT INTERNAL;

SQL> STARTUP MOUNT;

Oracle数据库坏块ORA-01578的处理方法

ORACLE的坏块即ORA-01578错,同时还可能伴随ORA-01110错,这种错误对于初学者或是那些没有实践经验的dba来说无疑是很棘手的。我当初就深受其害,写下这篇文章则是希望对大家有所帮助。

一、出问题时的情景

1、 我的一个计费的入库的进程停掉,报的便是ORA-01578错,对应用相关的表tg_bill03做SQL>select from tg_cdr03 where rownumselect count(*) from tg_bill03;时则报ORA-01578错。

2、 检查alter.log中看到一几条报错信息:
[code]
Errors in file /oracle816/app/admin/billing/udump/ora_7281_billing.trc:

ORA-01578: ORACLE data block corrupted (file # 126, block # 88490)

ORA-01110: data file 126: ‘/dev/vgjf7/rdata471′
[/ode]
二、事后分析产生这种问题的原因

1、 十之八九这个Oracle的数据库server打开了异步I/O(async io)或增加了写进程。

Oracle数据库删除表中重复记录的三种方法

方法一:

delete from tb_channel a where a.rowid in 

(select max(b.rowid) from tb_channle b 

where a.policyno=b.policyno and a.classcode=b.classcode); 

——这一办法在数据记录超过10万时一般都会变得很慢。

方法二:

--建立临时表,--清空原表,--插回原表,如下例:

create table temp_emp as (select distinct * from employee) ; 

truncate table employee; 

insert into employee select * from temp_emp; 

——这一办法适用于较大的表的情况。因为是块操作,对应于大表效率会好很多

方法三:

--建立新表,--去重复放入,--删除原表,如下例:
[code]
select distinct * into new_table from old_table

order by 主 键

drop table old_table

Oracle与MySQL删除字段时对索引和约束处理的不同之处

不知道有多少人清楚的知道,在Oracle中,如果一个复合索引,假定索引(a,b,c)三个字段,删除了(包括unused)其中一个字段,Oracle会怎么处理这个索引。同样,如果是约束,Oracle又怎么处理?

用Oracle为例子,我又拿mysql做了一个对比,看看mysql是怎么处理这个问题的。我这里不讨论谁好谁差,只是希望大家知道其中的差别与细节而已。

我们先看Oracle的例子,我们创建一个表,然后在上面创建一个约束,创建一个索引:

SQL10G>createtabletest(aint,bint,cint); 

Tablecreated. 

SQL10G>altertabletestaddconstraintpk_testprimarykey(a,b); 

Tablealtered. 

SQL10G>createindexind_testontest(b,c); 

Indexcreated. 

然后,我们检查刚才创建的约束与索引
[code]  SQL10G>selectt.constraint_name,c.constraint_type,t.column_name,t.position,c.status,c.validated

Oracle数据库定时工作的使用方法

Oracle数据库的Jobs创建语句如下:

begin 

sys.dbms_job.submit(job => :job, 

what => 'proc_yw;', 

next_date => to_date('13-11-2007 14:00:00', 'dd-mm-yyyy hh24:mi:ss'), 

interval => 'trunc(sysdate)+1+14/24'); 

commit; 

end; 

/ 

间隔trunc(sysdate)+1+14/24 就是每天下午2点执行一次proc_yw存储过程;

如间隔trunc(sysdate)+1+33/48就是每天下午4:30时执行一次

oracle数据库的定时Jobs作业(工作) 的使用

通过jobs的使用就能实现每天或每月的指定时间执行一个函数、过程与命令。

就如同windows系统中的任务计划一样。

2015年全球无线宽带用户总数将逼近21亿

市场调查机构Analysys Mason日前发表最新研究报告称,无线宽带服务将创造巨大的营收增长机会,蜂窝技术将占有最大的份额。报告指出,2015年全球无线宽带用户总数将超过20亿,达21亿,无线宽带服务营收将达7840亿美元,营收增长约24倍,这主要得益于无线技术的不断开发,产品性能的不断改进,以及运营商开展的更加灵活的价格策略。

该报告称,到今年底88%的无线宽带用户将采用HSPA(高速分组接入)技术,这一比例将会进一步扩大。该报告的联合作者马克说:“尽管LTE(长期演进)和 WiMAX技术的应用不断扩大,但是到2015年底仍有54%的无线宽带用户使用HSPA和HSPA+技术。”

到今年底,发展中国家的无线宽带用户将仅占全球无线宽带用户总数的17%,不过,由于这些地区固定线路基础设施匮乏,无线宽带服务将会出现强劲增长的态势,到2015年底,发展中国家的无线宽带用户将占全球无线宽带用户总数的57%。

该报告还指出,从W-CDMA到 HSPA 再到 HSPA+技术,是GSM运营商发展的必由之路,到2015年底,全球 HSPA 和 HSPA+用户将会从今年底的6100万增加到11亿。蜂窝技术将在无线宽带服务中占主导地位,到2015年底该技术的用户将是WiMAX用户的20倍。

如何在Oracle数据库设置默认表空间

DBA们经常会遇到一个这样令人头疼的问题:不知道谁在Oracle上创建了一个用户,创建时,没有给这个用户指定默认表空间,所以这个用户就会采用默认的表空间——system表空间。导致系统表空间迅速被用户数据占满,直至宕机。

在10G中,DBA有办法避免这种问题了——在线指定系统默认表空间:

ALTER DATABASE DEFAULT TABLESPACE ; 

通过执行以上命令,可以设定系统的默认表空间。这样的话,在创建新用户时,如果不指定他的默认表空间,就会采用上面指定的系统默认表空间作为这个用的默认表空间。

SQL>conn /as sysdba 


SQL> create user test1 identified by test1 default tablespace ringidx; 

用户已创建。

SQL> alter database default tablespace ring; 

数据库已更改。

SQL> create user test identified by test; 

用户已创建。

[code]

Oracle数据库存储过程若干问题的探讨

1.在oracle中,数据表别名不能加as,如:

select a.appname from appinfo a;-- 正确 

select a.appname from appinfo as a;-- 错误 

也许,是怕和oracle中的存储过程中的关键字as冲突的问题吧

2.在存储过程中,select某一字段时,后面必须紧跟into,如果select整个记录,利用游标的话就另当别论了。

select af.keynode into kn from APPFOUNDATION af where af.appid=aid and af.foundationid=fid;-- 有into,正确编译 

select af.keynode from APPFOUNDATION af where af.appid=aid and af.foundationid=fid;-- 没有into,编译报错,提示:Compilation 

Error: PLS-00428: an INTO clause is expected in this Select statement 

Windows下关闭所有驱动盘的自动播放的方法

1、点击“开始”,选择“运行”,键入“gpedit.msc”,运行后打开“组策略”窗口

2、在左栏的“本地计算机策略”下,打开“计算机配置”————“管理模板”————“系统”,然后在右栏的“设置”标题下,双击“关闭自动播放”;

3、选择“设置”选项卡,勾取“已启用”复选钮,然后在“关闭自动播放”框中选择“所有驱动器”,单击“确定”按钮,退出“组策略”窗口。

如何启动数据库管理工具Sybase Central

启动 Sybase Central 并连接到示例数据库 (Windows):

◆1.选择 " 开始 " → " 程序 " → "Sybase SQL Anywhere 8" → "SybaseCentral"。

◆2.连接到示例数据库。

选择 " 工具 " → " 连接 "。从插件列表中选择 "Adaptive Server Anywhere 8",然后单

击 " 确定 "。

在 " 数据库 " 选项卡上,输入服务器名称 asademo。该名称标识您在上一节中启动的数据库服务器。

在 " 标识 " 选项卡上,输入用户 ID DBA 和口令 SQL。单击 " 确定 " 进行连接。

启动 Sybase Central 并连接到示例数据库 (命令行):

◆1.在命令提示符处,输入以下命令:scjview

即会出现主 "Sybase Central" 窗口。

◆2.连接到示例数据库。

选择 " 工具 " → " 连接 "。

从插件列表中选择 "Adaptive Server Anywhere 8",然后单击 " 确定 "。

在 " 数据库 " 选项卡上,输入服务器名称 asademo。该名称标识您在上一节中启动的数据库服务器。

MySQL ERROR 1005解决之道

在使用MySQL的时候,在操作不当时,很容易出现 ERROR 1005 (HY000): Can't create table 这类错误。很多站长朋友可能需要排查很久才会找到问题的原因其实很简单,希望这篇文章可以对站长朋友以及Mysql初学者一点帮助。

MySQL官方提供的问题原因:

在信息中有一组【LATEST FOREIGN KEY ERROR】会有最近错误的详细描述和解决办法。

Cannot find an index in the referenced table where the referenced columns appear as the first columns, or column types in the table and the referenced table do not match for constraint. 

(译:不能在“被reference的表”里找到包含“被reference字段”的索引,或者是两个关联字段类型不匹配)

以下介绍两个示例:

示例一:

程序代码

[code]
create table booktype

(

讲解主机 DB2 上的存储过程的基本特点及其如何进行分类实施

本文主要介绍主机 DB2 上的存储过程的规划和实施经验,帮助用户了解主机 DB2 上的存储过程的基本特点及其如何进行分类实施。

随着主机 DB2 技术的发展,DB2 产品的功能越来越丰富,以及 DB2 产品增强了对其分布式访问功能,所以正确配置 DB2 产品提供的存储过程,就越来越重要。对现在的主机数据库用户来说,DB2 9 for z/OS 下的存储过程已经从一个可选项逐渐演变成了在数据库应用开发考虑的重要因素。在主机数据库存储过程的应用方面,除了用户可以根据需要开发存储过程外。主机数据库产品也提供了功能丰富的各类存储过程供用户使用。本篇就是为了帮助主机系统和开发人员更好的规划和实施基于主机数据库(DB2 for z/OS)的存储过程。

DB2 版本 9 以后,主机上所有的存储过程都统一由 z/OS 的一个子系统 WLM 来统一管理,WLM 是通过应用环境(Application Environment)来管理存储过程的,当存储过程被调用时,WLM 会自动启动和应用环境相应的启动作业来管理和实现所需要的存储过程功能。

我们可以把数据库存储过程分为 DB2 系统产品数据库存储过程和用户开发的存储过程。关于 DB2 数据库系统产品的存储过程,按照存储过程的功能,开发语言,性能要求等,我们会设置不同的数据库存储过程运行环境。下面的篇幅会面较详细的介绍这方面的情况。对于用户编写的存储过程,存储过程配置基本原则是一样,都需要根据实际应用开发功能和性能的要求进行规划实施,都需要根据具体要求进行具体分析,这里不再做主要描述。

完全开放Java源代码的努力终于要结束了!

完全开放Java源代码的努力终于要结束了。在Sun公司于2006年JavaOne会议上宣布它将免费提供Java,并且根据通用公共许可证开放 Java源代码的计划之后,在开放源代码的道路上一直存在一些斗争。在去年五月发布OpenJDK的时候,大约5%的代码仍然是封闭的。这部分代码不归 Sun所有。

Sun首席开源软件官员Simon Phipps说:“我们根据通用公共许可证发布我们有权发布的一切东西。这是去年夏季的事情。还有一些源代码没有公开。一种源代码与光栅图形和2D图形有关。拥有这些源代码的公司不允许我们公开这些源代码。我们与这些公司进行了谈判,因为这些公司曾说,'你可以开放这些源代码,我可以告你破解代码。'”

Phipps表示,“现在剩下的一些没有公开的源代码是Java中与声音有关的组件。我们最终决定,有关厂商如果不合作的话,我们将从头开始编写这些代码。这项工作将在未来几个月内完成。”

Phipps称,Java将在未来几个月内完全开放源代码。他说,“我预计这个时间是在今年年底,也许会更快一些。我们将拥有根据通用公共许可证授权的全部Java源代码。”

如何配置Java Web三层架构

一、软件下载:

1、java

这里使用的是jdk1.4.2。

下载地址:http://dlc.sun.com/jdk/j2sdk-1_4_2_07-windows-i586-p.exe;

2、tomcat
这里的tomcat的版本是5.0的,安装版或是解压版都是可以的。

下载地址:http://apache.linuxforum.net/dis ... a-tomcat-5.0.28.exe

3、数据库

推荐使用mysql,but暂时找不到下载地址,由于此次偶们班有课程设计要用sqlserver的,所以下面实践会使用sqlserver(找张安装盘安装)

注:连接sqlserver需要三个jar文件(文件名ms开头),可从这里下载:

http://www.sof

thouse.com.cn/html ... 11250300001646.html

上面包括完整的配置方法

二、软件安装 :

1.双击安装jd

删除SQL Server日志的具体步骤

一: 删除LOG

1:分离数据库 企业管理器->服务器->数据库->右键->分离数据库

2:删除LOG文件

3:附加数据库 企业管理器->服务器->数据库->右键->附加数据库

此法生成新的LOG,大小只有520多K

再将此数据库设置自动收缩

或用代码:

下面的示例分离 77169database,然后将 77169database 中的一个文件附加到当前服务器。

EXEC sp_detach_db @dbname = '77169database' 

EXEC sp_attach_single_file_db @dbname = '77169database', 

@physname = 'c:\Program Files\Microsoft SQL Server\MSSQL\Data\77169database.mdf' 

页面

订阅 JAVA技术网 RSS