数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。
范式说明
1.1 第一范式(1NF)无重复的列
所谓第一范式(1NF)是指数据库表的每一列都是不可分割的基本数据项,同一列中不能有多个值,即实...
阅读全文
http://www.infoq.com/cn/news/2011/01/relation-db-nosql-db
http://www.infoq.com/cn/news/2011/01/nosql-why
NoSQL概念
随着web2.0的快速发展,非关系型、分布式数据存储得到了快速的发展,它们不保证关系数据的ACID特性。NoSQL概念在2009年被提了出来。NoSQL最常见的解释是“non-relational”,“Not
Only SQL”也被很多人接受。(“NoSQL”一词最早于1998年被用于一个轻量级的关系数据库的名字。)
NoSQL被我们用得最多...
阅读全文
http://www.cnblogs.com/sunli/archive/2011/02/21/1959505.html
http://www.cnblogs.com/sunli/archive/2011/03/31/nosql-architecture-practice_3.html
1. nosql为辅
(一)NoSQL作为镜像
不改变原有的以MySQL作为存储的架构,使用NoSQL作为辅助镜像存储,用NoSQL的优势辅助提升性能。
图 1 -NoSQL为镜像(代码完成模式 )
//写入数据的示例伪代码 //data为我们要存储的数据对象 data.title=”ti...
阅读全文
特权用户可以使用drop database方式删除数据库,但此时的数据库必须处于MOUNT状态,并且一RESTRICT方式装载数据库。
1、在命令提示符下以具有sysdba身份的用户进行登陆。Sqlplus "sys/pwd as sysdba"。
2、通过数据字典视global_name,可以看到是否已经正确的连接到了要删除的数据库。
Select * from global_name;
3、关闭要删除的数据库,shutdown
4、以restrict方式装载数据库,startup restrict mount
5、删除数据库,d...
阅读全文
启用和禁用受限会话模式:
如果需要在数据库处于open模式下执行维护操作,同时保证此时其他用户不在数据库上建立连接和执行任务,
Alter system enable restricted session;
和
Alter system disable restricted session
设置显示模式set pagesize 30 linesize 120;
管理会话:
Saddr 会话的地址;
Sid 会话标示;
Serial# 会话的序列号;
User# 数据库用户的标示符;
Username 数据库用户的名称;
Command 正在处理的语句就...
阅读全文
启动和关闭数据库:
每个数据库至少包含一个例程,例程是oracle用来管理数据文件的一个实体,他在服务器中,由一组逻辑内存结构和一系列后台服务器进程组成。当启动数据库时这些服务和内存得到分配。一个例程只能访问一个数据库,而一个数据库可以被多个例程访问。启动例程的过程包括:
读取参数文件,或是文本参数文件,或是服务器参数文件。
根据参数文件中有关SGA区、PGA区的参数设置的值,在内存中分配相应的空间。
启动...
阅读全文
由于对MySQL的并发插入数据能力没有一个很好的评估,因此在些多进程并发程序时,忽略了MySQL的堵塞问题
以至程序时不时因为MySQL的堵塞,导致子进程一直在等待MySQL释放堵塞,完成INSERT 指令。
故障现象:
堵塞的子进程都是 sbwait 状态
父进程,一直在等待子进程结束,是wait状态
如果不手工kill掉堵塞的子进程,这些进程一直存在
原因排查:
开始怀疑是socket部分的问题。以为是由于连接服务器时,在等待...
阅读全文
select cast(19.16558 as decimal(9,2))精确到几位
select round(123.5); 四舍五入
select floor(123.5);取整数部分
select ceil(123.5);四舍五入
阅读全文