从零开始Redis(五)安装篇

142 阅读3分钟

持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第15天,点击查看活动详情

🍊作者简介:少年不想说话,努力长大

🍊往期回顾:从零开始Redis(四)

🍊近期目标:写完基础源码,点赞👍🏼、收藏⭐、留言📩

上讲我们说了部分数据结构想了想觉得还是需要放上redis的安装及注意项,这样才是完整,于是我把我之前安装的文档找了出来,redis安装走起来,当我打开vmware时,我发现我再也不用复杂的去开关机虚拟机了,x掉,我有云图片图片图片

安装Redis

其实这个步骤和虚拟机上一样的;我们按照下面的步骤一点一点来

如果你想查看历史版本:download.redis.io/releases/

小记:查看文件位置:find / -name redis.conf

wget http://download.redis.io/releases/redis-6.0.8.tar.gz
安装完成后
tar xzf redis-6.0.8.tar.gz 
解压
cd redis-6.0.8进来后执行make,

对于某些新系统而言会少gcc,我从网上找了个解决方案:yum install cppyum install binutilsyum install glibcyum install glibc-kernheadersyum install glibc-commonyum install glibc-develyum install gccyum install makeyum -y install centos-release-sclyum -y install devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutilsscl enable devtoolset-9 bash );通通执行一次然后重新解压,make一下 cd src查看有没有redis-server有的话别急着启动, 进入 vi redis.conf修改bind的127.0.0.1为0.0.0.0从只能本地访问到可远程访问然后保存退出;

小记:/xx 搜索关键字,n向下搜索关键字 N 反向搜索下一个,shift+g到最后一页;

?+关键字,回车即可。此为从文档位置向上查找关键字,按n键向上查找关键字;

好的,配置结束;

启动Redis并序列化

启动  ./redis-server ../redis.conf

结束,启动完成;完成后本地执行:在这之前我们可以先redis-cli来看看可不可以使用,直接keys *即可;

telnet ip port 查看能不能连上redis的你的端口

成功后需要对代码进行序列化处理,不然存到redis后会乱码(其实也不是乱码),百度的redis-cli --raw发现并不好使,最好还是对代码进行序列化处理;(java默认是jdk序列化,不大好使,所以替换掉),下面是我之前的序列化方式,也是之前参考网上的,大家有兴趣可以看看;

@Configuration
public class RedisConfig {    
@Bean    
//此方法存在于启动配置类的autoconfigrution中    
//重写的目的是默认的序列化是jdk的,而我们不想用jdk序列化,改用json序列化    
public RedisTemplate<String, Object> redisTemplate(RedisConnectionFactory redisConnectionFactory) throws UnknownHostException {        
RedisTemplate<String, Object> template = new RedisTemplate();        
Jackson2JsonRedisSerializer<Object> objectJackson2JsonRedisSerializer = new Jackson2JsonRedisSerializer<Object>(Object.class);        
//具体序列化方式        
ObjectMapper om = new ObjectMapper();        
om.setVisibility(PropertyAccessor.ALL, JsonAutoDetect.Visibility.ANY);        
om.enableDefaultTyping(ObjectMapper.DefaultTyping.NON_FINAL);        
objectJackson2JsonRedisSerializer.setObjectMapper(om);        
template.setKeySerializer(objectJackson2JsonRedisSerializer);        
template.setValueSerializer(objectJackson2JsonRedisSerializer);        
template.setHashKeySerializer(objectJackson2JsonRedisSerializer);        
template.setHashValueSerializer(objectJackson2JsonRedisSerializer);        
template.setConnectionFactory(redisConnectionFactory);        
return template;    
}}

加上序列化后在redis -cli, 查看会默认加上双引号;这里最好使用可视化工具查看,方便,到这里其实我们已经把后面代码用例的序列化部分在这里就体现了,至于序列化用不用jackson那就看个人喜好了,有需要的可以从网上找到redis操作的工具类,然后就可以实际体验下用代码来操作redis了,当然了,其他的数据结构我们后面也会一点一点说的🥗🥗🥗;

结束结束,那就🛴🛴🛴

如果对你有所帮助

点个赞呗