
数据库
文章平均质量分 87
奋斗的鱼
这个作者很懒,什么都没留下…
展开
-
数据库学习--mysql开启慢查询日志
查看当前服务器是否开启慢查询:1、快速办法,运行sql语句show VARIABLES like "%slow%" 2、直接去my.conf中查看。my.conf中的配置(放在[mysqld]下的下方加入)[mysqld]log-slow-queries = /usr/local/mysql/var/slowquery.loglong_query原创 2014-09-04 14:05:32 · 465 阅读 · 0 评论 -
memcached深度解析(2)
本次介绍memcached的数据删除机制,以及memcached的最新发展方向——二进制协议(Binary Protocol) 和外部引擎支持。memcached在数据删除方面有效利用资源数据不会真正从memcached中消失上次介绍过, memcached不会释放已分配的内存。记录超时后,客户端就无法再看见该记录(invisible,透明), 其存储空间即可重复使用。Lazy E转载 2015-03-19 15:03:36 · 398 阅读 · 0 评论 -
memcached深度解析(3)
本次不再介绍memcached的内部结构, 开始介绍memcached的分布式。memcached的分布式正如第1次中介绍的那样, memcached虽然称为“分布式”缓存服务器,但服务器端并没有“分布式”功能。 服务器端仅包括 第2次、 第3次 前坂介绍的内存存储功能,其实现非常简单。 至于memcached的分布式,则是完全由客户端程序库实现的。 这种分布式是memcached的最转载 2015-03-19 15:04:22 · 323 阅读 · 0 评论 -
分布式缓存--memcached
近日,在一篇技术博客中看到有关memcached是否过时的讨论,基本意思就是redis的出现,正在逐步弱化memcached的应用,顿时惊觉,我还没用过memcached技术,它就要过时啦?于是下面就是一通狂查资料,身为一只健忘的鱼,还是整理记录下所查资料,以备后查。 1、memcached是什么?具有哪些特征? memcached 是一个高性能的分布式内存对象缓存系统,用于原创 2015-03-18 17:19:10 · 674 阅读 · 0 评论 -
将arff格式文件导入到mysql数据库
weka中有许多arff格式的数据文件,有时为方便操作,需要把他们放到数据库中,现以Weka安装目录下data文件夹中的iris.arff文件为例。 1、先在weka中将arff文件转换为csv文件,这一步使用weka打开,然后另存为csv格式的文件即可。2、然后删除csv文件中第一行对属性名的描述,如下图。 2、保存,并放到数据库数据文件目录下(如C:\Prog原创 2015-05-15 11:30:16 · 1923 阅读 · 0 评论 -
mysql脚本--load data infile
load data [low_priority] [local] infile 'file_name txt' [replace | ignore] into table tbl_nameload data infile语句从一个文本文件中以很高的速度读入一个表中。使用这个命令之前,mysqld进程(服务)必须已经在运行。为了安全原因,当读取位于服务器上的文本文件时,文件必须处于原创 2015-05-15 17:49:10 · 558 阅读 · 0 评论 -
mysql的悲观锁和乐观锁
悲观锁:悲观锁指的是对数据被外界(包括本系统当前的其他事务,以及来自外部系统的事务处理)修改持保守态度,因此,在整个数据处理过程中,将数据处于锁定状态。悲观锁的实现,往往依靠数据库提供的锁机制(也只有数据库层提供的锁机制才能真正保证数据访问的排他性,否则,即使在本系统中实现了加锁机制,也无法保证外部系统不会修改数据)。 使用场景举例:以MySQL InnoDB为例商品goo原创 2015-07-09 21:59:18 · 1224 阅读 · 1 评论 -
java开发连接池配置方法总结
今天遇到了关于数据源连接池配置的问题,发现有很多种方式可以配置,现总结如下,希望对大家有所帮助:(以Mysql数据库为例)一、Tomcat配置数据源:方式一:在WebRoot下面建文件夹META-INF,里面建一个文件context.xml,内容如下: maxActive="50" maxIdle="30" maxWait="10000" logA原创 2015-07-09 21:27:11 · 886 阅读 · 0 评论 -
REDIS与MEMCACHED的区别
如果简单地比较Redis与Memcached的区别,大多数都会得到以下观点:1 Redis不仅仅支持简单的k/v类型的数据,同时还提供list,set,hash等数据结构的存储。2 Redis支持数据的备份,即master-slave模式的数据备份。3 Redis支持数据的持久化,可以将内存中的数据保持在磁盘中,重启的时候可以再次加载进行使用。在Redis中,并不是所有的数据都转载 2015-07-26 17:56:14 · 321 阅读 · 0 评论 -
高并发网站解决方案
一个小型的网站,可以使用最简单的html静态页面就实现了,配合一些图片达到美化效果,所有的页面均存放在一个目录下,这样的网站对系统架构、性能的要求都很简单。随着互联网业务的不断丰富,网站相关的技术经过这些年的发展,已经细分到很细的方方面面,尤其对于大型网站来说,所采用的技术更是涉及面非常广,从硬件到软件、编程语言、数据库、WebServer、防火墙等各个领域都有了很高的要求,已经不是原来简单的ht转载 2015-07-05 20:32:38 · 365 阅读 · 0 评论 -
mysql基本语法及面试常见问题
首先,简要介绍基础语句: 1、说明:创建数据库 Create DATABASE database-name 2、说明:删除数据库 drop database dbname 3、说明:备份sql server --- 创建 备份数据的 device USE master EXEC sp_addumpdevice 'disk', 'testBack', 'c转载 2015-08-08 16:04:27 · 844 阅读 · 0 评论 -
数据仓库建模方法
所谓水无定势,兵无常法。不同的行业,有不同行业的特点,因此,从业务角度看,其相应的数据模型是千差万别的。目前业界较为主流的是数据仓库厂商主要是 IBM 和 NCR,这两家公司的除了能够提供较为强大的数据仓库平台之外,也有各自的针对某个行业的数据模型。例如,在银行业,IBM 有自己的 BDWM(Banking data warehouse model),而 NCR 有自己的 FS-LDM 模转载 2015-08-08 16:38:34 · 635 阅读 · 0 评论 -
MySql中ON DUPLICATE KEY UPDATE用法解析
在项目中常见的一种应用情景是,每做完一件事情都要更新一下统计表,就要根据主键去统计表里面去查询是否已经有这样的一条记录,如果有就更新,如果没有就插入一条记录。常见的做法是写三条sql语句:select * from player_count where player_id = 1;//查询统计表中是否有记录insert into player_count(player_id,c原创 2015-07-31 11:38:42 · 629 阅读 · 0 评论 -
memcached深度解析(4)
本次介绍一些mixi的案例和 实际应用上的话题,并介绍一些与memcached兼容的程序。mixi案例研究mixi在提供服务的初期阶段就使用了memcached。 随着网站访问量的急剧增加,单纯为数据库添加slave已无法满足需要,因此引入了memcached。 此外,我们也从增加可扩展性的方面进行了验证,证明了memcached的速度和稳定性都能满足需要。 现在,memcached已成为转载 2015-03-19 15:06:03 · 450 阅读 · 0 评论 -
memcached深度探析(1)
本次将介绍memcached的内部构造的实现方式,以及内存的管理方式。 另外,memcached的内部构造导致的弱点也将加以说明。Slab Allocation机制:整理内存以便重复使用最近的memcached默认情况下采用了名为Slab Allocator的机制分配、管理内存。 在该机制出现以前,内存的分配是通过对所有记录简单地进行malloc和free来进行的。 但是,这种方式会导致内转载 2015-03-19 15:03:03 · 352 阅读 · 0 评论 -
数据库学习--mysql 分页查询语句
先看看单条 SQL 语句的分页 SQL 吧。方法1:适用于 SQL Server 2000/2005SELECT TOP 页大小 * FROM table1 WHERE id NOT IN ( SELECT TOP 页大小*(页数-1) id FROM table1 ORDER BY id ) ORDER BY id方法2:适用于 SQL Server 2000/200转载 2014-08-30 20:56:04 · 4464 阅读 · 0 评论 -
数据库学习--全文本搜索
一、理解全文本搜索1、MyISAM支持全文本搜索,而InnoDB不支持。2、在使用全文本搜索时,MySQL不需要分别查看每个行,不需要分别分析和处理每个词。MySQL创建指定列中各词的一个索引,搜索可以针对这些词进行。这样MySQL可以快速有效地决定哪些词匹配,哪些词不匹配,它们匹配的频率,等等。二、使用全文本搜索1、为了进行全文本搜索,必须索引被搜索的列,而且要随着数据的改变不断转载 2014-08-17 21:03:20 · 521 阅读 · 0 评论 -
数据库学习--基本操作
1、登录数据库 命令:mysql -u username –p (mysql -h主机地址 -u用户名 -p用户密码) 描述:输入命令回车,即可输入密码了。密码验证通过即可进入数据库了。2、查看数据库状态 命令:show databases; 描述:该命令会显示现存的所有数据库。3、建立与删除数据库 命令:create database d转载 2014-08-17 21:29:24 · 308 阅读 · 0 评论 -
数据库学习--使用正则表达式搜索
一、正则表达式介绍正则表达式是用来匹配文本的特殊的串(字符集合)。二、使用MySQL正则表达式1、MySQL仅仅支持多数正则表达式实现的一个很小的子集。2、LIKE匹配整个列值;而REGEXP匹配列值的子串,如果被匹配的文本在列值中出现,REGEXP将会找到它,相应的行将被返回。看下面的例子:[sql] view plaincopymysql>selec转载 2014-08-17 21:10:30 · 518 阅读 · 0 评论 -
数据库学习--mysql数据库sql优化原则
原则1、仅列出需要查询的字段,这对速度不会明显的影响,主要是考虑节省应用程序服务器的内存。原来语句: select * from admin优化为: select admin_id,admin_name,admin_password from admin原则2、尽量避免在列上做运算,这样导致索引失效原语句: select * from admin where year(adm转载 2014-09-01 21:46:03 · 414 阅读 · 0 评论 -
数据库学习--mysql中limit函数优化
我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候原创 2014-08-30 21:12:36 · 739 阅读 · 0 评论 -
数据库学习--写mysql语句经验谈
1. 不论一个sql中涉及到多个表,每次都用两个表(结果集)操作,得到新的结果后,再和下一个表(结果集)操作。2. 避免在select f1,(select f2 from tableB ).... from tableA 这样得到字段列。直接用tableA和tableB关联得到A.f1,B.f2就可以了。3.避免隐含的类型转换 如 select id from employ转载 2014-09-03 22:22:58 · 306 阅读 · 0 评论 -
数据库学习--mysql数据表纵横转换
先通过一个例子来理解,后面分析原创 2014-09-03 22:02:15 · 1177 阅读 · 0 评论 -
数据库学习--mysql语句汇总
1、说明:创建数据库CREATE DATABASE database-name2、说明:删除数据库drop database dbname3、说明:备份sql server--- 创建 备份数据的 deviceUSE masterEXEC sp_addumpdevice 'disk', 'testBack', 'c:\mssql7backup\MyNwind_1.dat'-转载 2014-09-03 22:14:37 · 414 阅读 · 0 评论 -
数据库学习--Mysql字符串截取函数SUBSTRING的用法说明
函数: 1、从左开始截取字符串 left(str, length) 说明:left(被截取字段,截取长度) 例:select left(content,200) as abstract from my_content_t 2、从右开始截取字符串 right(str, length) 说明:right(被截取字段,截取长度) 例:select right(conten原创 2014-09-29 14:57:22 · 652 阅读 · 0 评论 -
数据库学习--sql多条件查询case when then
CASE WHEN 条件1THEN 结果1 WHEN 条件2THEN 结果2 WHEN 条件3THEN 结果3 WHEN 条件4THEN 结果4......... WHEN 条件NTHEN 结果N ELSE结果XENDCase具有两种格式。简单Case函数和Case搜索函数。--简单Case函数CASE sex转载 2014-10-13 10:25:44 · 834 阅读 · 0 评论 -
数据库学习--B树(B-Tree)的由来、数据结构、基本操作以及数据库索引的应用
B树(B-Tree)的由来、数据结构、基本操作以及数据库索引的应用B树是为磁盘存储而专门设计的一类平衡搜索树,B树的高度仅随着它所包含的节点数按对数增长,不过因为单个节点可以包含多个关键字,所以对数的底数可以比较大,实际应用中一般是50~2000,给个直观的数字,一棵分支因子为1001、高度为2(不包含根节点)的B树,可以存储超过10亿个关键字!1.从磁盘结构讲起计算机的机械磁转载 2014-10-20 20:44:48 · 699 阅读 · 0 评论 -
B-树和B+树的应用:数据搜索和数据库索引
1 .B-树定义B-树是一种平衡的多路查找树,它在文件系统中很有用。定义:一棵m 阶的B-树,或者为空树,或为满足下列特性的m 叉树:⑴树中每个结点至多有m 棵子树;⑵若根结点不是叶子结点,则至少有两棵子树;⑶除根结点之外的所有非终端结点至少有[m/2] 棵子树;⑷所有的非终端结点中包含以下信息数据: (n,A0,K1,A1,K2,…,Kn,An)其中:K转载 2014-10-21 11:46:08 · 408 阅读 · 0 评论 -
主从数据库配置
在Web应用系统中,数据库性能是导致系统性能瓶颈最主要的原因之一。尤其是在大规模系统中,数据库集群已经成为必备的配置之一。集群的好处主要有:查询负载、数据库复制备份等。 MySQL数据库支持数据库的主从复制功能,因此在集群方面具有其独特的优势。众多国内外大型网站架构体系中,均采用了MySQL的主从数据库配置来实现查询负载、数据库热备等功能。本人在实际的Web项目中也涉及到这一需求,在转载 2014-12-03 14:43:46 · 308 阅读 · 0 评论 -
mysql中join的四种连接
MySQL是通过Join语句把两个或多个表连接起来,而生成的新表可以被当成表来使用,也可以保存起来。Join语句的含义是把两张表的属性通过它们的值组合在一起.1. 内连接表A与表B进行内连接,就是将表A的某属性与表B的相应属性进行逐行比较,找出满足条件的组合,并按照输出需求合并成一行。有两种:相等连接和自然连接。例如——相等连接(最常用)查询的是列出所有城市的所属国家以及独原创 2015-09-13 12:06:48 · 1719 阅读 · 0 评论