今天本来是想测试一下在使用触发器的情况下在一个表中插入1百万条数据和用代码实现有多大差别。但没想到插入语句一直执行不完,而观察安装MySQL的服务器CPU使用才5%左右。
这么慢的速度实在等不下去了,于是把innodb_flush_log_at_trx_commit参数调整为2.哈,好家伙,CPU占用马上跳到了70%左右,果然变快了。而且我的数据一会儿就插入完成了。于是深刻地明白了,以前在innodb_flush_log_at_trx_commit为1的时候,大多数时间CPU都在等待日志的读写。
这篇文章主要介绍了Redis中5种数据结构的使用场景介绍,本文对Redis中的5种数据类型String、Hash、List、Set、Sorted Set做了讲解,需要的朋友可以参考下
一、redis 数据结构使用场景
原来看过 redisbook 这本书,对 redis 的基本功能都已经熟悉了,从上周开始看 redis 的源码。目前目标是吃透 redis 的数据结构。我们都知道,在 redis 中一共有5种数据结构,那每种数据结构的使用场景都是什么呢?
String——字符串
Hash——字典
List——列表
Set——集合
Sorted Set——有序集合
PHP 的会话默认是以文件的形式存在的,可以配置到 NoSQL 中,即提高了访问速度,又能很好地实现会话共享,,,爽歪歪!
配置方式如下:
方法一:修改 php.ini 的设置
session.save_handler = redis
session.save_path = "tcp://127.0.0.1:6379"
修改完之后,重启一下 php-fpm。
今天碰到数据库出错:
Got error 28 from storage engine
查了一下,数据库文件所在的盘应该没事,应该是数据库用的临时目录空间不够
到官网下载最新版的 Redis-3.2.6,
我把它放到文件夹:/usr/local/src/centos-sdk/source2/redis
##############
# 指定配置文件:
################################## INCLUDES #####################################
#
# 1 包含文件
# 如果想要使用到配置文件,Redis服务必须以配置文件的路径作为第一个参数启动。如:./redis-server /path/to/redis.conf
# 单位说明:当需要指定内存大小时,可能会使用到不同的单位,如1k、5GB、4M等,这里给出其单位含义:
# 1k => 1000 bytes
# 1kb => 1024 bytes
# 1m => 1000000 bytes
# 1mb => 1024*1024 bytes
# 1g => 1000000000 bytes
# 1gb => 1024*1024*1024 bytes
# s指定单位是大小写不敏感。如1GB、1gB、1Gb是一样的。
在mysql中很多朋友都认为字段为AUTO_INCREMENT类型自增ID值是无法修改,其实这样理解是错误的,下面介绍mysql自增ID的起始值修改与设置方法。
通常的设置自增字段的方法:
创建表格时添加:
create table table1(id int auto_increment primary key,...)
创建表格后添加:
alter table table1 add id int auto_increment primary key 自增字段
一定要设置为primary key。