Welcome 微信登录

首页 / 数据库 / MySQL

mysql之set与enum的介绍

mysql之set与enum的介绍

set,enum的数据类型都是字符串类型的对象,其中set最多可以包含64个元素,并且可以任意取到集合中的元素。而enum则是只能取到集合中的木一个元素,最多包含65536个元素,也就是说set是多项选择,enum是单项选择了。这里我们来比较下他们之间相同点和不同点:复制代码 代码如下:mysql> create table db_set( -> set1 set("x","y","z") not null, -> enum1 enum(...
memcached的学习过程

memcached的学习过程

前段时间,我们实验室的师姐过来给我们来讲了现在公司所有到的新技术---------memcached,感觉很强大本来下来就要按着师姐的例子给走一遍呢,结果杂事太多给耽搁了。上次新浪网院的老师上课是也讲到了这个memcached,说是现在新浪微博就是用到了大量的memcached这种缓存机制。所以下定决心一定要尝试下这个memcached的威力有多大。先是上官网上下一个源码安装包来,可是这里memcached的正常运行需要又libevent来进行网络并发链接...
解析MySQL设置当前时间为默认值的方法

解析MySQL设置当前时间为默认值的方法

MySQL设置当前时间为默认值的问题我们经常会遇到,下面就为您介绍MySQL设置当前时间为默认值的实现全步骤,希望对您能有所启迪。数据库:test_db1创建表:test_ta1两个字段:id (自增 且为主键),createtime 创建日期(默认值为当前时间)方法一、是用alert table语句:复制代码 代码如下:usetest_db1; createtabletest_ta1( idmediumint(8)unsignednotnulllauto...
解析MySQL中mysqldump工具的基本用法

解析MySQL中mysqldump工具的基本用法

导出要用到MySQL的mysqldump工具,基本用法是: shell> mysqldump [OPTIONS] database [tables] 如果你不给定任何表,整个数据库将被导出。 通过执行mysqldump --help,你能得到你mysqldump的版本支持的选项表。 注意,如果你运行mysqldump没有--quick或--opt选项,mysqldump将在导出结果前装载整个结果集到内存中,如果你正在导出一个大的数据库,这将可能是一个...
深入mysql并发插入优化详解

深入mysql并发插入优化详解

使用storm处理日志的时候,经常会遇到并发插入mysql的效率问题,到网上查了些资料,做一下笔记将表的引擎改为 myisam,修改 my.cnf 的concurrent_insert=2,concurrent_insert 可以设的值有 0 1 2 ,2 是完全支持并发插入1) concurrent _insert =0 ,无论MyISAM的表数据文件中间是否存在因为删除而留下俄空闲空间,都不允许concurrent insert。2)concurren...
解析优化MySQL插入方法的五个妙招

解析优化MySQL插入方法的五个妙招

工作中遇到大概20万的数据插入操作,程序编完后发现运行超时,修改PHP最大执行时间到600,还是超时,检查超时前插入的数据条数推算一下,大概要处理40~60分钟才能插入完成,看来程序写的效率太低,得优化了。测试电脑配置:CPU:AMD Sempron(tm) Processor内存:1.5G语句如下:复制代码 代码如下:$sql = "insert into `test` (`test`) values ("$content")";for ($i=1;$i...
Java实现获得MySQL数据库中所有表的记录总数可行方法

Java实现获得MySQL数据库中所有表的记录总数可行方法

在MySQL中,可以通过SELECT COUNT(*) FROM table_name查询某个表中有多少条记录。如果想知道某个数据库中所有别的记录总数应该怎么做呢?本文给出两种可行的Java程序,解决该问题。1. 首先确定数据库中有多少个表,然后对每个表执行SELECT COUNT(*) FROM table_name 复制代码 代码如下: import java.sql.Connection; import java.sql.DriverManager;...
减少mysql主从数据同步延迟问题的详解

减少mysql主从数据同步延迟问题的详解

基于局域网的master/slave机制在通常情况下已经可以满足"实时"备份的要求了。如果延迟比较大,就先确认以下几个因素: 1. 网络延迟2. master负载3. slave负载一般的做法是,使用多台slave来分摊读请求,再从这些slave中取一台专用的服务器,只作为备份用,不进行其他任何操作,就能相对最大限度地达到"实时"的要求了另外,再介绍2个可以减少延迟的参数 –slave-net-timeout=seconds 参数含义:当slave从主数据...
基于MySQL数据库复制Master-Slave架构的分析

基于MySQL数据库复制Master-Slave架构的分析

为了应用系统的可伸缩性,往往需要对数据库进行scale out设计,scale out设计也就是通过增加数据库处理节点来提高系统整体的处理能力,即增加数据库服务器的数量来分担压力。通过这种方式系统的伸缩性增强了,成本也降低了,但是系统的架构复杂了,维护困难了。难免出现系统的宕机或故障。因此,理论上来说,系统的安全性(可能数据丢失)降低了,可用性也降低了。那么要提高数据安全性,以及系统的高可用性,很简单的办法就是所有软硬件都避免单点隐患,所有数据都保存多份。...
解析MySQL数据库性能优化的六大技巧

解析MySQL数据库性能优化的六大技巧

数据库表表面上存在索引和防错机制,然而一个简单的查询就会耗费很长时间。Web应用程序或许在开发环境中运行良好,但在产品环境中表现同样糟糕。如果你是个数据库管理员,你很有可能已经在某个阶段遇到上述情况。因此,本文将介绍对MySQL进行性能优化的技巧和窍门。1.存储引擎的选择如果数据表需要事务处理,应该考虑使用InnoDB,因为它完全符合ACID特性。如果不需要事务处理,使用默认存储引擎MyISAM是比较明智的。并且不要尝试同时使用这两个存储引擎。思考一下:在...
优化mysql数据库的经验总结

优化mysql数据库的经验总结

1、选取最适用的字段属性 MySQL可以很好的支持大数据量的存取,但是一般说来,数据库中的表越小,在它上面执行的查询也就会越快。因此,在创建表的时候,为了获得更好的性能,我们可以将表中字段的宽度设得尽可能小。例如,在定义邮政编码这个字段时,如果将其设置为CHAR(255),显然给数据库增加了不必要的空间,甚至使用VARCHAR这种类型也是多余的,因为CHAR(6)就可以很好的完成任务了。同样的,如果可以的话,我们应该使用MEDIUMINT而不是BIGIN来...
MySQL分表实现上百万上千万记录分布存储的批量查询设计模式详解

MySQL分表实现上百万上千万记录分布存储的批量查询设计模式详解

我们知道可以将一个海量记录的 MySQL 大表根据主键、时间字段,条件字段等分成若干个表甚至保存在若干服务器中。 唯一的问题就是跨服务器批量查询麻烦,只能通过应用程序来解决。谈谈在Java中的解决思路。其他语言原理类似。这里说的分表不是 MySQL 5.1 的 partition,而是人为把一个表分开存在若干表或不同的服务器。1. 应用程序级别实现见示意图electThreadManager 分表数据查询管理器它为分表的每个database or serv...
<< 81 82 83 84 85 86 87 88 89 90 >>