博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

2012年12月26日

摘要: 查询所有数据库列表CODE:> show dbs如果想查看当前连接在哪个数据库下面,可以直接输入dbCODE:> dbAdmin想切换到test数据库下面CODE:> use testswitched to db test> dbTest想查看test下有哪些表或者叫collection,可以输入CODE:> show collectionssystem.indexesuser想知道mongodb支持哪些命令,可以直接输入helpCODE:> helpHELP show dbs show database names show collections sho 阅读全文

posted @ 2012-12-26 20:48 75077027 阅读(820) 评论(0) 推荐(1) 编辑

摘要: MongoDB是一个高性能,开源,无模式的文档型数据库,是当前NoSql数据库中比较热门的一种。它在许多场景下可用于替代传统的关系型数据库或键/值存储方式。Mongo使用C++开发。Mongo的官方网站地址是:http://www.mongodb.org/,读者可以在此获得更详细的信息。 特点: 高性能、易部署、易使用,存储数据非常方便。主要功能特性有:面向集合存储,易存储对象类型的数据。模式自由。支持动态查询。支持完全索引,包含内部对象。支持查询。支持复制和故障恢复。使用高效的二进制数据存储,包括大型对象(如视频等)。自动处理碎片,以支持云计算层次的扩展性支持Python,PHP,Rub.. 阅读全文

posted @ 2012-12-26 20:29 75077027 阅读(770) 评论(0) 推荐(0) 编辑

摘要: NoSql,全称是 Not Only Sql,指的是非关系型的数据库。下一代数据库主要解决几个要点:非关系型的、分布式的、开源的、水平可扩展的。原始的目的是为了大规模web应用,这场运动开始于2009年初,通常特性应用如:模式自由、支持简易复制、简单的API、最终的一致性(非ACID)、大容量数据等。NoSQL被我们用得最多的当数key-value存储,当然还有其他的文档型的、列存储、图型数据库、xml数据库等。 阅读全文

posted @ 2012-12-26 20:28 75077027 阅读(565) 评论(0) 推荐(0) 编辑

2012年12月25日

摘要: 要优化下单,提高下单的TPS (Transaction per second),我们首先要做的是对下单的逻辑剥离,只保留核心部分,而把附加功能剔除出去。比如说下单要考虑库存量,考虑发短信,要给卖家发旺旺消息通知,要对订单做统计,要做销售额统计等等,这些功能是必要的,但是也是附加的功能,要最大程度提高下单这一步的TPS,就要先不考虑这些东西。下单必然会涉及到买家查看订单,和卖家查看收到的订单,修改订单价格等,这是下单的核心。 在下单这个操作中有买家和卖家两个密切关联而有不同的视角。牧劳称为两个不同的维度。据牧劳的介绍下单这一步只有5张表,这5张表涵盖了这两个维度的操作。下单是在一个数据库事务中进 阅读全文

posted @ 2012-12-25 21:41 75077027 阅读(339) 评论(0) 推荐(0) 编辑

2012年12月23日

摘要: 我们在数据库中使用表的时候,经常会遇到两种使用表的方法,分别就是使用临时表及表变量。在实际使用的时候,我们如何灵活的在存储过程中运用它们,虽然它们实现的功能基本上是一样的,可如何在一个存储过程中有时候去使用临时表而不使用表变量,有时候去使用表变量而不使用临时表呢? 临时表 临时表与永久表相似,只是它的创建是在Tempdb中,它只有在一个数据库连接结束后或者由SQL命令DROP掉,才会消失,否则就会一直存在。临时表在创建的时候都会产生SQL Server的系统日志,虽它们在Tempdb中体现,是分配在内存中的,它们也支持物理的磁盘,但用户在指定的磁盘里看不到文件。 临时表分为本地和全局两种... 阅读全文

posted @ 2012-12-23 21:35 75077027 阅读(162) 评论(0) 推荐(0) 编辑

摘要: 锁的概述 一. 为什么要引入锁 多个用户同时对数据库的并发操作时会带来以下数据不一致的问题: 丢失更新A,B两个用户读同一数据并进行修改,其中一个用户的修改结果破坏了另一个修改的结果,比如订票系统 脏读A用户修改了数据,随后B用户又读出该数据,但A用户因为某些原因取消了对数据的修改,数据恢复原值,此时B得到的数据就与数据库内的数据产生了不一致 不可重复读A用户读取数据,随后B用户读出该数据并修改,此时A用户再读取数据时发现前后两次的值不一致 并发控制的主要方法是封锁,锁就是在一段时间内禁止用户做某些操作以避免产生数据不一致 二 锁的分类 锁的类别有两种分法: 1. 从数据库系统的角度来看:分为 阅读全文

posted @ 2012-12-23 21:33 75077027 阅读(249) 评论(0) 推荐(0) 编辑

2012年12月20日

摘要: 举例说明数据库一、二、三及BCNF范式 数据库的设计范式是数据库设计所需要满足的规范,满足这些规范的数据库是简洁的、结构明晰的,同时,不会发生插入(insert)、删除(delete)和更新(update)操作异常。反之则是乱七八糟,不仅给数据库的编程人员制造麻烦,而且面目可憎,可能存储了大量不需要的冗余信息。 设计范式是不是很难懂呢?非也,大学教材上给我们一堆数学公式我们当然看不懂,也记不住。所以我们很多人就根本不按照范式来设计数据库。实质上,设计范式用很形象、很简洁的话语就能说清楚,道明白。本文将对范式进行通俗地说明,并以笔者曾经设计的一个简单论坛的数据库为例来讲解怎样将这些范式应用于实际 阅读全文

posted @ 2012-12-20 22:21 75077027 阅读(177) 评论(0) 推荐(0) 编辑

摘要: 本质上没区别。只是函数只能返回一个变量的限制;而存储过程可以返回多个。函数是可以嵌入在sql中使用的,可以在select中调用,而存储过程不行。函数限制比较多,如不能用临时表,只能用表变量等,而存储过程的限制相对就比较少。 1. 一般来说,存储过程实现的功能要复杂一点,而函数的实现的功能针对性比较强。 2. 当对数据库进行复杂操作时(如对多个表进行Update、Insert、Query、Delete时),可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使用。存储过程可以从自己的存储过程内引用其它存储过程,这可以简化一系列复杂语句. 3. 存储过程一般是作为一个独立的部分来执... 阅读全文

posted @ 2012-12-20 22:20 75077027 阅读(2920) 评论(0) 推荐(0) 编辑

2012年12月2日

摘要: 1)配置jdk默认情况下,eclipse会自动关联环境变量中配置的jdk,如果我们安装了多个版本的jdk,也可以手工进行配置,方法如下:“Window”--"Preferences"--"Java"--"Installed JREs"--“Add”--"Standard VM"--选择jdk安装目录。2)配置tomcat“Window”--"Preferences"--"Server"--"Runtime Environments"--“Add”--&qu 阅读全文

posted @ 2012-12-02 12:25 75077027 阅读(643) 评论(0) 推荐(0) 编辑

摘要: 定义:一种进行计划安排和成本控制,把活动时间和成本方面的不确定性结合起来,统筹考虑进行项目管理的方法 PERT图也称“计划评审技术”,它采用网络图来描述一个项目的任务网络。不仅可以表达子任务的计划安排,还可以在任务计划执行过程中估计任务完成的情况,分析某些子任务完成情况对全局的影响,找出影响全局的区域和关键子任务。以便及时采取措施,确保整个项目的完成。 阅读全文

posted @ 2012-12-02 12:21 75077027 阅读(476) 评论(0) 推荐(0) 编辑