导出 mysql 数据到 redis

淺唱寂寞╮ 提交于 2019-11-30 15:49:09

决定你要导入到 redis 的数据类型

假设我的表 t_user 的结构为

列名 注释 类型
name 名称 varchar
idcard 身份证号 varchar
phone 手机号 varchar

目前的需求为需要给手机号和身份证号做一个映射关系,那么我可以采用 string 类型,使用 set 命令设置数据

拼接 sql 转换成 redis 的 aof 数据格式

将下面的 sql 脚本保存成文件 user.sql

SELECT CONCAT(
	"*3\r\n",
	'$',LENGTH(t.redis_cmd),'\r\n',t.redis_cmd,'\r\n',
	'$',LENGTH(t.skey),'\r\n',t.skey,'\r\n',
	'$',LENGTH(t.svalue),'\r\n',t.svalue,'\r'
	) as redissql from
	(
	SELECT 'set' as redis_cmd ,phone as skey ,idcar as svalue from t_user where name is not null and standno is not null
	) t

注: NULL 数据是插入不进去的, NULL 数据要么过滤掉,要么替换成别的

恢复数据到 redis

执行 sql ,插入redis 的 2 号数据库 ,使用 pipe 方式

mysql -uroot -p123456 <db> --skip-column-names --default-character-set=utf8 --raw < user.sql | redis-cli -a <password> --pipe -n 2

一点小推广

创作不易,希望可以支持下我的开源软件,及我的小工具,欢迎来 gitee 点星,fork ,提 bug 。

Excel 通用导入导出,支持 Excel 公式 博客地址:https://blog.csdn.net/sanri1993/article/details/100601578 gitee:https://gitee.com/sanri/sanri-excel-poi

使用模板代码 ,从数据库生成代码 ,及一些项目中经常可以用到的小工具 博客地址:https://blog.csdn.net/sanri1993/article/details/98664034 gitee:https://gitee.com/sanri/sanri-tools-maven

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!