Loading

邢栋博客

“数据库“

mysql事务隔离级别

mysql事务隔离级别 1 READ UNCOMMITTED 未提交读 在此级别,事务的修改,即使没有提交,对其他事务也是可见的。事务可以读取未提交的数据,这也被称为脏读。 2 READ COMMITTED 提交读 大多数数据库系统的默认隔离级别是这个,但是mysql不是。此级别满足 隔离性的简单定义:一个事务开始时,只能看见已经提交的事务所做的修改。换句话说,一个事务从开始知道提交之前,所做的任何修改对其他事务都是不可见的。这个级别有时候会出现不可重复读,因为两次执行同样的查询,可能会得到不一样的结果。 3 REFEATABLE READ 可重复读 解...

mysql大数据量分页查询优化

select * from table test limit 2500000,10; 优化方法 select * from test where id >= (select id from test limit 2500000,1) limit 10; select * from test as a join (select id from test limit 2500000,10) as b on a.id=b.id;

ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column

mysql> select * from user_gift where real_receive_user_id = 149 group by send_user_id; ERROR 1055 (42000): Expression #1 of SELECT list is not in GROUP BY clause and contains nonaggregated column 'live.user_gift.u_g_id' which is not functionally dependent on columns in GROUP B...

mongodb添加用户报错TypeError:db.addUser is not a function

db.addUser('admin','admin123') 出现 2016-08-11T12:22:00.498+0800 E QUERY [thread1] TypeError: db.addUser is not a function : 原因 新版的mongodb已经不支持addUser方法了。 db.createUser({user:'admin',pwd:'admin123',roles:['userAdminAnyDatabase']})

在PHP中设置分布式memcache存取

创建对象 $mem = new Memcache(); 添加服务 $mem->addServer("192.168.150.250",11211); $mem->addServer("192.168.150.138",11211); $mem->addServer("192.168.112.128",11211); 放置信息 $mem->add("mystr","hello memcache!",MEMCACHE_COMPRESSE...

关于redis 的排序

redis的sort命令可以对列表键、集合键或者有序集合键的值进行排序。 SORT命令的实现 SORT SORT 命令的排序操作由快速排序算法实现。 例子 rpush numbers 5 3 4 1 2 lrange numbers 0 -1 //无排序 sort numbers //排序 正序 ALPHA选择的实现 SORT ALPHA 例子 sadd alphabet a b c d e f g smembers alphabet //无排序 sort alphabet ALPHA//排序 ASC选项和DESC选项的实现 SORT [ASC|...

mysql数据类型及其大小限制

mysql数据类型及其大小限制 数字类型 INT 正常大小的整数,可以有符号,也可以没有符号。如果是有符号整数,其允许的取值范围是-2147483648~2147483647;无符号整数的取值范围是从0至4294967295。最高可指定11位数字。 TINYINT非常小的整数,分为有无符号两种。前有符号时,其允许取值范围是-128~127;无符号时的取值范围为0~255。所以,最高可指定4位数字。 SMALLINT较小的整数,分为有无符号两种。前有符号时,其允许取值范围是-32768~32767;无符号时的取值范围为0~65535。所以最高可指定5位数字...

关于redis的事务

redis的事务 实现 redis> MULTI OK redis> SET name "xingdong" QUEUED redis> GET name QUEUED redis> SET author 'Action' QUEUED redis> GET author QUEUED redis> EXEC 1) OK 2) "xingdong" 3) OK 4) "Action" ps:事务队列以先进先出的方法保存入队的命令。 watch命令监视数据库键 实现 redis> watch name author...

redis3.0.6配置文件redis.conf参数详解

是否以后台进程运行 daemonize yes 指定后台进程的pid文件写入位置 pidfile /var/run/redis.pid 监听端口,默认为6379 port 6379 在高并发的环境中,为避免慢客户端的连接问题,需要设置一个高速后台日志 tcp-backlog 511 只接受以下绑定的IP请求 bind 192.168.1.100 10.0.0.1 bind 127.0.0.1 设置unix套接字,默认为空,及不通过unix套接字来监听 unixsocket /tmp/redis.sock unixsocketperm 700 客户端空闲多...

关于redis的复制

完整重同步用于处理初次复制情况:完整重同步的执行步骤和sync命令的执行步骤一样,他们是通过让主服务器创建并发送rdb文件,以及向从服务器发送保存在缓冲区里面的写命令来进行同步。 Redis 2.8 以前的复制功能不能高效地处理断线后重复制情况, 但 Redis 2.8 新添加的部分重同步功能可以解决这个问题。 部分重同步通过复制偏移量、复制积压缓冲区、服务器运行 ID 三个部分来实现。 复制偏移量 执行复制的双方-主服务器和从服务器会分别维护一个复制偏移量。 复制积压缓冲区 复制积压缓冲区是由服务器维护的一个固定长度(fixed-size)先进先出(F...