
Database
文章平均质量分 67
cndone
这个作者很懒,什么都没留下…
展开
-
AWR报告手动生成
sqlplus / as sysdbaSQL> exec DBMS_WORKLOAD_REPOSITORY.CREATE_SNAPSHOT (flush_level=>'ALL'); SQL> @$ORACLE_HOME/rdbms/admin/awrrpt.sqlCurrent Instance~~~~~~~~~~~~~~~~ DB Id DB...原创 2014-04-12 12:23:12 · 149 阅读 · 0 评论 -
Oracle index
索引: 1、一般索引: create index index_name on table(col_name); 2、Oracle 分区索引详解 语法:Table Index CREATE [UNIQUE|BITMAP] INDEX [schema.]index_name ON [schema.]table_name [tbl_alias] (col ...原创 2011-08-09 12:19:47 · 90 阅读 · 0 评论 -
Oracle强杀进程,解决表锁死等问题
1、找到sid,serial#;SELECT /*+ rule */ s.username, l.type,decode(l.type,'TM','TABLE LOCK', 'TX','ROW LOCK', NULL) LOCK_LEVEL, o.owner,o.object_name,o.object_type,...原创 2011-10-17 17:49:36 · 236 阅读 · 0 评论 -
(转)oracle执行计划
一.相关的概念 Rowid的概念 Recursive Sql概念 Predicate(谓词) DRiving Table(驱动表) Probed Table(被探查表) 组合索引(concatenated index) 可选择性(selectivity) 二.oracle访问数据的存取方法 1) ...原创 2011-07-20 19:23:32 · 113 阅读 · 0 评论 -
Oracle常用技巧(转)
1.删除表空间 DROP TABLESPACE TableSpaceName [INCLUDING CONTENTS [AND DATAFILES]] 2.删除用户 DROP USER User_Name CASCADE 3.删除表的注意事项 在删除一个表中的全部数据时,须使用TRUNCATE TABLE 表名;因为用DROP T...原创 2011-10-11 14:39:40 · 149 阅读 · 0 评论 -
ORA-01658 表空間大小不足
解決方法:1.查詢各個表空間的利用率 select a.TABLESPACE_NAME,a.total,nvl(b.used,0) USED,nvl((b.used/a.total)*100,0) PCT_USEDfrom(select TABLESPACE_NAME,sum(bytes)/(1024*1024) totalfrom sys.dba_da...原创 2011-02-22 12:24:28 · 119 阅读 · 0 评论 -
(转)ORACLE数据导入导出
Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地的dmp文件,imp命令可以把dmp文件从本地导入到远处的数据库服务器中。 利用这个功能可以构建两个相同的数据库,一个用来测试,一个用来正式使用…… Oracle数据导入导出imp/exp就相当于oracle数据还原与备份。exp命令可以把数据从远程数据库服务器导出到本地...原创 2011-02-19 15:45:10 · 112 阅读 · 0 评论 -
Oracle 10g 安装之网络适配器要求 Microsoft Loopback Adapter (环回适配器)
安装10g的时候,遇到了需要安装环回适配器的问题。网上(http://www.cnblogs.com/myssh/archive/2009/03/14/1411769.html)有说通过DHCP分配的IP,会要求安装 Microsoft Loopback Adapter (环回适配器),以此来提供静态IP地址。我的系统是Windows XP,提供了静态IP地址,但是还是出现了这个问题。第一次安装的...原创 2011-02-19 15:36:50 · 794 阅读 · 0 评论 -
【ORA-12560: TNS: 协议适配器错误】解决方案
ORA-12560: TNS: 协议适配器错误的问题的原因有三个:1.监听服务没有起起来。windows平台个一如下操作:开始---程序---管理工具---服务,打开服务面板,启动oraclehome92TNSlistener服务。2.database instance没有起起来。windows平台如下操作:开始---程序---管理工具---服务,打开服务面板,启动oracleserviceX...原创 2011-02-19 14:42:32 · 180 阅读 · 0 评论 -
SQL优化34条
1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE 的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersection table)作为基础表, 交叉表是指那个被其他...原创 2010-07-05 12:47:26 · 90 阅读 · 0 评论 -
查询oracle表的信息(表,字段,约束,索引)
1、查询出所有的用户表select * from user_tables 可以查询出所有的用户表通过表名过滤需要将字母作如下处理select * from user_tables where table_name = upper('表名')因为无论你建立表的时候表名名字是大写还是小写的,create语句执行通过之后,对应的user_tables表中的tabl...原创 2011-08-09 12:22:23 · 118 阅读 · 0 评论 -
Oracle中使用sys_connect_by_path函数实现行转列
select category ,MAX(sys_connect_by_path(t.name, ',')) as cate_name from( select a.category,a.name,row_number() over(PARTITION BY category ORDER BY name) as rn from biz_code a) tSTART ...原创 2012-01-09 20:16:40 · 443 阅读 · 0 评论 -
Oracle数据库的锁类型(转)
Oracle数据库的锁类型oracle官方文档里面关于锁的定义:Locks are mechanisms that prevent destructive interaction between transactions accessing the same resource—either user objects such as tables and rows or system obje...原创 2014-05-08 14:05:09 · 310 阅读 · 0 评论 -
PowerDesigner脚本生成
1 PowerDesigner中批量根据对象的name生成comment的脚本执行方法:Open PDM -- Tools -- Execute Commands -- Run Script---------------------------------------------------执行以下Option ExplicitValidationMode = TrueInteracti...原创 2013-11-23 17:04:51 · 271 阅读 · 0 评论 -
(转)查看执行计划
Oracle10g获取sql语句的执行计划详解 --- Oracle诊断或调优经常需要做的就是查看SQL语句的执行计划,很多时候我们需要得到sql语句在不同场景、不同时间段的执行计划。 一,通过explain plan命令获得sql语句的执行计划。 explain plan的命令格式如下: sql>Explain plan <set sta...原创 2012-09-29 11:00:38 · 150 阅读 · 0 评论 -
EXP-00011:oracle11g 空表不能exp导出的问题
环境:Oracle11gR2+linux RH 5.5最近验证正式系统的问题,特意dmp一份正式库的数据恢复到临时库,执行EXP导出时,部分表提示 EXP-00011:表不存在错误,但是查询user_all_tables视图,此表确实是存在的,并且执行select语句也能成功,不过表为空表,查看权限等也没有问题。后来通过查询资料,发现问题是由Deferred Segment Creation...原创 2013-05-23 10:51:20 · 176 阅读 · 0 评论 -
(转)Redhat Linux安装Oracle 11g R2数据库
Oracle目前最新的版本是11g R2版本,网上不少安装介绍都是9i或者10g的,我按照介绍RHEL5.5上安装Oracle 11gR2总是有问题,之后看官方文档介绍了,在光盘的doc目录下有。Oracle 11g R2数据库安装硬件配置要求:最小内存 1 GB of RAM虚拟内存容量Available RAM Swap Space Requi...原创 2012-04-04 22:17:45 · 96 阅读 · 0 评论 -
新建Oracle数据库2种方法
新建Oracle数据库2种方法:1.通过运行Oracle Database Configuration Assistant 创建配置或删除数据库(也可在命令行下输入dbca);2.用命令行的方式建立数据库详述:1.通过运行Oracle Database Configuration Assistant 创建配置或删除数据库; 建议不熟悉创建过程的DBA使用该方法,进行配置,最后...原创 2013-03-14 15:53:01 · 241 阅读 · 0 评论 -
ORA-28001: the password has expired
大早上正式库提示:Oracle提示错误消息ORA-28001: the password has expired解决办法:1、利用SYSDBA权限登陆;2、查看账户信息:select username,account_status from dba_users3、如果账户locked/expired, 得先解锁: alter user BJM...原创 2012-02-23 13:47:54 · 330 阅读 · 0 评论 -
linux自动备份数据库
#!/bin/shexport PATH=$PATH:$HOME/binexport ORACLE_BASE=/data2/DB/oracleexport ORACLE_HOME=$ORACLE_BASE/product/11g/dbhomeexport ORACLE_SID=mydbexport PATH=/usr/sbin:$PATHexport PATH=$ORACL...原创 2012-02-13 18:08:38 · 177 阅读 · 0 评论 -
(转)ORACLE 数据库(查询--主键外键约束)
-- 查询外键约束(查某表的所有父表) select rcc.owner,rcc.table_name 子表,rcc.constraint_name,rcc.column_name,c.table_name 父表,c.constraint_name,cc.column_name from user_constraints c,user_cons_col...原创 2012-05-15 15:50:47 · 536 阅读 · 0 评论 -
Mysql中获取刚插入的自增长id的三种方法归纳
备注:使用以下方法的时候,插入与主键查询必须确保在同一个事务当中。 我们在写数据库程序的时候,经常会需要获取某个表中的最大序号数,一般情况下获取刚插入的数据的id,使用select max(id) from table 是可以的。但在多线程情况下,就不行了。下面介绍三种方法(1) getGeneratedKeys()方法:程序片断:Connection conn = ;...原创 2010-06-02 11:36:51 · 118 阅读 · 0 评论 -
Oracle分析函数详述
【1】找出所有订单总额排名前3的大客户:SQL> select *SQL> from (select region_id,SQL> customer_id,SQL> sum(customer_sales) cust_total,SQL> rank() over(order...原创 2010-02-09 16:09:55 · 121 阅读 · 0 评论 -
Mysql性能优化
作者:车东 发表于:2008-12-07 20:12 最后更新于:2008-12-08 14:12版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明。http://www.chedong.com/blog/archives/001451.html # Slow Query Log 慢查询 尤其是like操作,性能杀手,轻易不要使用,让全文索引交给Luce...原创 2009-07-15 10:28:36 · 106 阅读 · 0 评论 -
ORACLE中利用TRIGGER实现mysql,sqlserver指定列自增长功能
mysql中自增长:MYSQL 中设定一个字段为自动增长字段非常简单,只要在表定义中指定字段为AUTO_INCREMENT 即可。比如下面的SQL 语句创建T_Person 表,其中主键FId 为自动增长字段:CREATE TABLE T_Person(FId INT PRIMARY KEY AUTO_INCREMENT,FName VARCHAR(20),FAge INT); 使用示...原创 2009-11-03 23:49:14 · 118 阅读 · 0 评论 -
字段命名出错处理
(1)删除该字段,然后重新添加alter table table_name drop column column_namealter table table_name add(column_name type(legth))(2)选择需要的字段重建该表 INSERT INTO NEW_TABLE(FIELD1,FIELD2,FIELD3) S...原创 2009-11-01 23:49:31 · 201 阅读 · 0 评论 -
UNION 与 UNION ALL 的区别
默认情况下,UNION运算符合并了两个查询结果集,其中完全重复的数据行被合并为了一条。如果需要在联合结果集中返回所有的记录而不管它们是否唯一,则需要在UNION运算符后使用ALL操作符...原创 2009-11-01 23:42:10 · 85 阅读 · 0 评论 -
Oracle 分页处理
Oracle中支持窗口函数ROW_NUMBER(),其用法和MSSQLServer2005中相同,比如我们执行下面的SQL语句:SELECT * FROM(SELECT ROW_NUMBER() OVER(ORDER BY FSalary DESC) row_num,FNumber,FName,FSalary,FAge FROM T_Employee) aWHERE a.row_num>=3...原创 2009-11-01 22:14:40 · 103 阅读 · 0 评论 -
SQL Server分页3种方案总结
-------------------------------------分页方案一:(利用Not In和SELECT TOP分页)语句形式:SELECT TOP 10 *FROM TestTableWHERE (ID NOT IN (SELECT TOP 20 id FROM TestTable ORDER BY id))ORDER BY ...原创 2009-11-01 21:41:49 · 108 阅读 · 0 评论 -
海量数据查询优化技巧
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引。 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描,如: select id from t where num is null 可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from ...原创 2009-10-30 15:50:18 · 162 阅读 · 0 评论 -
mysql 编码转换
想获得UTF-8编码的数据,但MySQL表的编码是GBK的很多人在处理这个问题时,是先查询MySQL获得原始数据,然后使用iconv或者mb_convert_encoding把编码从GBK转换成UTF-8,其实只要在查询前SET NAMES ‘utf8’即可,不明真相的MySQL使用者们往往认为GBK编码的表在查询时只能SET NAMES ‘gbk’,这实在是一大谬误。...原创 2009-10-28 23:52:13 · 243 阅读 · 0 评论 -
使用mysqldumpslow和mysqlsla分析mysql慢查询日志
MySQL优化不是一劳永逸的工作,而是一个持久战。其中慢查询日志的分析是一个重要手段,以前我总是手动大概看看,不过这实在不是长久之计,今天试用了一下mysqldumpslow和mysqlsla,感觉效率高多了。mysqldumpslowmysqldumpslow是官方提供的perl脚本,所以你也不用费劲巴拉的安装了,只要有mysql的环境基本就能用:/path/to/mysqldumpslow -...原创 2009-10-20 23:27:44 · 136 阅读 · 0 评论 -
mysql 长时间没连接了 就会自动断开服务
Communications link failure due to underlying exception这是因为mysql 长时间没连接了 就会自动断开服务。 解决办法 1、首先,下载必须的jar包 dbcp 包,目前版本是1.2.1:http://jakarta.apache.org/commons/ dbcp / pool包,目前版本是1.3:http://jakarta.ap...原创 2010-01-04 19:37:49 · 898 阅读 · 0 评论 -
mysql数据导入mssql
编写代码自不用说,一下介绍通过ODBC数据源实现数据的转移: 1.安装mysql数据库的ODBC驱动,mysql-connector-odbc-3.51.19-win32.msi 2.打开控制面板\管理工具\数据源ODBC,在用户DSN中添加一个MySQL ODBC 3.51数据源。 3.在登录login选项卡中输入数据源名称Data Source Name,此处输入...原创 2009-07-20 14:34:37 · 278 阅读 · 0 评论 -
ORACLE树状查询
select * from balance_sheet connect by prior balance_sheet.bs_id= balance_sheet.bs_pid start with balance_sheet.bs_pid=7 ;其中 start with balance_sheet.bs_pid=7 ; 代表从哪个父ID开始查询bs_id : 实际idbs_pid ...原创 2010-02-05 19:44:02 · 118 阅读 · 0 评论 -
Data too long for column (类型转换问题)
如果是数据x (int 11)类型的可能有些奇怪:insert into a (x) values (’a')出现:Out of range value adjusted for column ‘x’ at row 1insert into a (x) values (’11a’)出现:Data truncated for column ‘x’ at row 1解决办法:在my.ini里找到sql...原创 2010-02-05 10:49:14 · 225 阅读 · 0 评论 -
mysql 数据库备份mysqldump gzip
GRANT ALL PRIVILEGES ON databaseName.* TO 'userName'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;数据库备份是很重要的。如果定期做好备份,这样就可以在发生系统崩溃时恢复数据到最后一次正常的状态,把损失减小到最少。MySQLl提供了一个mysqldump命令,我们可以用它进行数据备份,下面假...原创 2010-02-01 21:00:17 · 521 阅读 · 0 评论 -
mysql4.0升级到5.0 Date转换问题
1,从mysql4.0中以gbk的编码导出数据;2,设置mysql5.0的编码格式为gbk;3,导入数据库;4,升级mysql驱动;5,设置数据库链接编码gbk;问题描述:数据表中有记录的time字段(属性为timestamp)其值为:“0000-00-00 00:00:00”程序使用select 语句从中取数据时出现以下异常:java.sql.SQLException:Value...原创 2010-01-25 16:46:05 · 114 阅读 · 0 评论 -
mysql下distinct多字段查询
数据库结构: table id name 1 a 2 b 3 c 4 c 5 b 需求:查询name不重复的数据(含ID) select *, count(distinct name) from table group by name结果: id name count(distinct name) 1 a 1 2 b 1 3 c 1...2010-04-13 13:22:52 · 363 阅读 · 0 评论 -
java 中调用 oracle 存储过程
//加载Oracle驱动 DriverManager.registerDriver(new oracle.jdbc.driver.OracleDriver()); //获得Oracle数据库连接 Connection conn = DriverManager.getConnection("jdbc:oracle:thin:@192.168.1.2:1521:cloudsea", "1...原创 2009-07-30 17:03:29 · 85 阅读 · 0 评论