2020年05月02日
⁄ 数据库
⁄ 共 1115字
你能用的数据库引擎取决于mysql在安装的时候是如何被编译的。要添加一个新的引擎,就必须重新编译MYSQL。在缺省情况下,MYSQL支持三个引擎:ISAM、MYISAM和HEAP。另外两种类型INNODB和BERKLEY(BDB),也常常可以使用。
查看数据库引擎命令:SHOW ENGINES
ISAM
ISAM是一个定义明确且历经时间考验的数据表格管理方法,它在设计之时就考虑到数据库被查询的次数要远大于更新的次数。因此,ISAM执行读取...
[db:关键字]阅读全文
2020年05月02日
⁄ 数据库
⁄ 共 577字
顺便提下mysql的DISTINCT的关键字有很多你想不到的用处
1.在count 不重复的记录的时候能用到
比如SELECT COUNT( DISTINCT id ) FROM tablename;
就是计算talbebname表中id不同的记录有多少条
2,在需要返回记录不同的id的具体值的时候可以用
比如SELECT DISTINCT id FROM tablename;
返回talbebname表中不同的id的具体的值
3.上面的情况2对于需要返回mysql表中2列以上的结果时会有歧...
[db:关键字]阅读全文
2020年05月02日
⁄ 数据库
⁄ 共 2430字
mysql慢查询日志对于跟踪有问题的查询非常有用,可以分析出代码实现中耗费资源的sql语句,对我们程序的优化有很高的参考。本篇主要将慢查询日志的开启,日志分析,这也是优化SQL程序的一般步骤中至关重要的一步。
1.mysql慢查询日志
打开mysql的慢查询日志很简单,只需要在mysql的配置文件里(windows系统是my.ini,linux系统是my.cnf)的[mysqld]下面加上
Java代码
log-slow-queries=mysql_slow.log
...
[db:关键字]阅读全文
2020年05月02日
⁄ 数据库
⁄ 共 322字
SET @countries=(SELECT GROUP_CONCAT(DISTINCT countrys) FROM gui_web_region_info);
INSERT INTO gui_web_action_info SELECT '2013-04-16', package_name, country,
'gui_i000', using_count FROM gui_web_total_using_info, (SELECT DISTINCT
country FROM gui_web_action_info WHERE INSTR(@countries, country)>0 AND LENGTH(country)=2) b;
[db:关键字]阅读全文
2020年05月02日
⁄ 数据库
⁄ 共 711字
#!/bin/sh
INTERVAL=5
PREFIX=$INTERVAL-sec-status
RUNFILE=/home/benchmarks/running
mysql -e 'SHOW GLOBAL VARIABLES' >> mysql-variables
while test -e $RUNFILE; do
file=$(date +%F_%I)
sleep=$(date +%s.%N | awk "{print $INTERVAL - (\$1 % $INTERVAL)}")
sleep $sleep
ts="$(date + "TS %s.%N %F %T")"
load...
[db:关键字]阅读全文
2020年05月02日
⁄ 数据库
⁄ 共 1432字
在大中型项目中,在数据库设计的时候,考虑到数据库最大承受数据量,通常会把数据库或者数据表水平切分,以降低单个库,单个表的压力。我这里介绍两个我们项目中常用的数据表切分方法。当然这些方法都是在程序中使用一定的技巧来路由到具体的表的。首先我们要确认根据什么来水平切分?在我们的系统(SNS)中,用户的UID贯穿系统,唯一自增长,根据这个字段分表,再好不过。
方法一:使用MD5哈希
做法是对UI...
[db:关键字]阅读全文
2020年05月02日
⁄ 数据库
⁄ 共 600字
一般来说,我们在mysql数据库纪录数据时间时,都会选择datatime类型,这样时间可以精确 到秒。但随之而来的一个问题是,当我们要取得某一段时间内的数据内容会有一些时间转换上的麻烦,例如我们要取得2002年3月2日到2003年7月8日的 这段时间的内容,我们第一个直觉就是应该将sql写成下面的形式:
select * from yourdb where sj>='2002-3-2' and sj<= '2003-7-8'
这样以来,我们...
[db:关键字]阅读全文
2020年05月02日
⁄ 数据库
⁄ 共 980字
从SQL文件导入数据库经常会用到,可能是从mysqldump 的脚本恢复数据库,也可能是数据库迁移。往往这样的SQL文件里包含很多条语句,如果中途某条语句出错将会导致整个导入任务终止。遇到这种情况应该怎样处理呢?
先准备一个演示用的SQL脚本 demo.sql
[sql]
SET NAMES UTF8;
CREATE TABLE cc (
`account_id` mediumint(9) NOT NULL AUTO_INCREMENT,
PRIMARY KEY (`account_id`)
)ENGINE...
[db:关键字]阅读全文
2020年05月02日
⁄ 数据库
⁄ 共 793字
select * from student where '2012-02-27 00:00:00' < created_date and '2012-02-29 00:00:00' > created_date
select * from student where UNIX_TIMESTAMP('2012-02-27 00:00:00') < UNIX_TIMESTAMP(created_date) and UNIX_TIMESTAMP('2012-02-29 00:00:00') > UNIX_TIMESTAMP(created_date);
SELECT * FROM student WHERE (UNIX_TIMESTAMP(crea...
[db:关键字]阅读全文
2020年05月02日
⁄ 数据库
⁄ 共 1354字
首先看表结构,引擎innodb
+----+----------+------+
| id | name | seat |
+----+----------+------+
| 1 | 管理员 | 98 |
| 2 | 维护人员 | 98 |
| 3 | 主任 | 97 |...
[db:关键字]阅读全文