2019 三月 25 , 星期一
Home / 数据存储

数据存储

mysql 批量建表 存储过程

delimiter // CREATE procedure create_table() BEGIN DECLARE `@i` int(11); DECLARE `@sqlstr` varchar(65000); SET `@i`=0; WHILE `@i` < 256 DO SET @sqlstr = CONCAT( “CREATE TABLE box_item_pool_”, `@i`, “( `id` int(10) unsigned NOT NULL ...

Read More »

mysql Incorrect datetime value

从本地 迁移数据库到测试服 发现sql报错 MySQL []> INSERT INTO `table` VALUES (1, 1, 1, 1, 0, 0, 0, 0, 0, ’0000-00-00 00:00:00′, ’0000-00-00 00:00:00′, ’0000-00-00 00:00:00′, ’0000-00-00 00:00:00′, ’2017-08-31 11:41 ...

Read More »

ubuntu 16.10 重置mysql5.7密码

sudo vim /etc/mysql/mysql.conf.d/mysqld.cnf [mysqld]下加入”skip-grant-tables” sudo /etc/init.d/mysql restart mysql -u root update mysql.user set authentication_string=password(’123456′) where user=’root’;(mysql5.7取消了p ...

Read More »

redis 漏洞 事故总结

事故起因 合并uc数据方案采用本地临时redis-server存储id,脚本和临时数据存储在同一台服务器导致单台服务器内存不足 redis-server挂机. 于是开启crontab-3机器 作为临时redis-server,由于对redis的漏洞没有相关的了解和没有相关安全意识,使用了redis的默认配置 导致该台服务器被黑客入侵 事故原理 Redis 默认情况下,会绑定在 0.0.0.0:6379,这样将会将Redis服务暴露到公网上,如果在没有开启认证的情况下,可以导致任意用户在可以访问目 ...

Read More »

php redis spop false

问题描述: 从脚本机2 切换到脚本机3后 发现原来的脚本跑不到数据了 spop返回false scard返回20000000+ 查看redis日志 13671:M 06 Jan 19:39:11.073 # WARNING overcommit_memory is set to 0! Background save may fail under low memory condition. To fix this issue add ‘vm.overcommit_memory = 1& ...

Read More »

redis 发布与订阅(pub/sub)

SUBSCRIBE 、 UNSUBSCRIBE 和 PUBLISH 三个命令实现了发布与订阅信息泛型(Publish/Subscribe messaging paradigm), 在这个实现中, 发送者(发送信息的客户端)不是将信息直接发送给特定的接收者(接收信息的客户端), 而是将信息发送给频道(channel), 然后由频道将信息转发给所有对这个频道感兴趣的订阅者。 发送者无须知道任何关于订阅者的信息, 而订阅者也无须知道是那个客户端给它发送信息, 它只要关注自己感兴趣的频道即可。 对发布者 ...

Read More »

redis 排序

本篇文章介绍下redis排序命令.redis支持对list,set和sorted set元素的排序。排序命令是sort 完整的命令格式如下: SORT key [BY pattern] [LIMIT start count] [GET pattern] [ASC|DESC] [ALPHA] [STORE dstkey] 下面我们一一说明各种命令选项 (1)sort key 这个是最简单的情况,没有任何选项就是简单的对集合自身元素排序并返回排序结果.下面给个例子 redis> lpush m ...

Read More »

redis 数据类型

本文介绍下redis支持的各种数据类型包括string,list ,set ,sorted set 和hash 1. keys redis本质上一个key-value db,所以我们首先来看看他的key.首先key也是字符串类型,但是key中不能包括边界字符 由于key不是binary safe的字符串,所以像”my key”和”mykey\n”这样包含空格和换行的key是不允许的 顺便说一下在redis内部并不限制使用binary字符,这是red ...

Read More »

修改mysql 默认编码

进入终端 输入 show variables like ‘%character%’ 可以看到 mysql数据库的默认编码并不是utf-8。 vim /etc/mysql/my.cnf character_set_server=utf8 init_connect='SET NAMES utf8' sudo /etc/init.d/mysql restart create database test default charset=utf8;

Read More »