Linux下安装redis以及解决各种安装与启动问题
Linux下安装redis以及解决gcc和redis启动各种问题1.下载并上传 redis-6.0.16.tar.gz 到服务器2.解压安装包3.基本的环境安装、启动、连接、测试(1)执行make命令(2)如果make命令安装失败处理a. 安装失败参考处理方法:① 切换redis版本② 升级GCC版本解决因指定redis安装路径启动不了等问题:(3)如果make成功,则继续a. 拷贝配置文件后,并
Linux下安装redis以及解决各种安装与启动问题
1.下载并上传 redis-6.0.16.tar.gz 到服务器
去官网下载即可:https://redis.io/download.
2.解压安装包
- 我这里解压到了指定目录:
tar -zxvf redis-6.0.16.tar.gz -C ../install
3.基本的环境安装、启动、连接、测试
(1)执行make命令
(2)如果make命令安装失败处理
a. 安装失败参考处理方法:
① 切换redis版本
- 切换redis版本为:redis-5.0.14.tar.gz
- 再次执行
make
命令编译redis
- 执行
make install
命令完成安装
- 如果不指定安装路径,则默认安装到
cd /usr/local/bin
目录下:
- 在此目录下创建文件aboutConfigs(名字根据自己爱好随便定),并将解压目录下的 redis.conf 文件copy到aboutConfigs文件夹下
② 升级GCC版本
-
我这里换了linux 系统(用centos7),并装了gcc:直接命令安装
yum install gcc
-
按上步骤解压redis安装包后,执行
make
命令,发现还是报错:
Redis6.0需要GCC5.0版本以上,若GCC版本不足,则会造成编译Redis报错,刚才安装的gcc版本是4.8.5,所以要升级gcc了
-
升级gcc这里参考的是:https://www.cnblogs.com/dj0325/p/8481092.html.
-
通过scl软件集升级GCC
注:scl软件集(Software Collections),是为了给 RHEL/CentOS 用户提供一种以方便、安全地安装和使用应用程序和运行时环境的多个(而且可能是更新的)版本的方式,同时避免把系统搞乱。- 先安装scl源
yum install centos-release-scl scl-utils-build -y
-
列出scl有哪些源可以用
yum list all --enablerepo='centos-sclo-rh'
-
安装8版本的gcc、gcc-c++、gdb工具链(toolchian)
yum install -y devtoolset-8-toolchain
-
查看GCC版本
此时查看发现版本并没有改变,这时刷新一下环境即可 -
刷新环境:
scl enable devtoolset-8 bash
-
然后再 make 就成功了
-
然后再
make
就成功了 -
然后
make install
,并指定安装路径(指定不指定路径看个人爱好)make install PREFIX=/susu/soft/mkinstall/redis/redis-6.0.4/
-
然后拷贝配置文件,修改配置文件同上(redis5)
cp /susu/soft/install/redis/redis-6.0.16/redis.conf ./
-
接下来启动服务
同样的方法启动,如果报错,可能是安装的时候指定路径的问题redis-server redisconfig/redis.conf
解决因指定redis安装路径启动不了等问题:
- 报这个错说明
redis-server
不是全局命令,那么假如到全局即可:
我的redis安装路径是:/susu/soft/mkinstall/redis/redis-6.0.4 - 创建redis-server软链接:
ln -s /susu/soft/mkinstall/redis/redis-6.0.4/bin/redis-server /usr/bin/redis-server
这样就将redis-server
放到/usr/bin下即可(相当于创建一个全局快捷方式),再次启动即可
同样的,可能不能通过redis-cli -p 6379
命令直接启动,但是可以通过指定ip来启动:./redis-cli -h 127.0.0.1 -p 6379
,这个只需要再创建个软链接即可。 - 创建redis-cli软链接:
ln -s /susu/soft/mkinstall/redis/redis-6.0.4/bin/redis-cli /usr/bin/redis-cli
好了,这种方法到这里已经都很OK了!
(3)如果make成功,则继续
a. 拷贝配置文件后,并修改copy后的配置文件redis.conf
b. 修改完配置文件后,用配置文件启动redis
redis-server aboutConfigs/redis.conf
c. 查看redis服务是否运行
netstat -anput | grep redis
- 或者查看 redis 进程:
ps -ef | grep redis
d. 简单介绍连接的命令参数:
1)-h 命令参数
- Server hostname (default: 127.0.0.1). Redis服务IP
2) -p 命令参数
- Server port (default:
6379
). Redis服务端口
3)-a 命令参数
- Password to use when connecting to the server. 密码(无密码的话不需要-a参数)
4)-c 命令参数
- 启用集群模式(遵循-ASK和-MOVED重定向)
5)--raw
- 注意是:
--raw
设置编码(解决中文乱码问题) - 解释:redis 在使用 get key 的时候中文变成十六进制编码,加上
--raw
解决此中文显示问题
e. 连接测试:
- 简单连接:
redis-cli -p 6379
- 其他连接情况:
①./redis-cli -h host -p port --raw
②./redis-cli -h host -p port -a password
③./redis-cli -h host -p port -a password -c
④./redis-cli -h host -p port -a password -c --raw
- 例如:
./redis-cli -h 127.0.0.1 -p 6379
或者:./redis-cli -h 127.0.0.1 -p 6379 --raw
或者:./redis-cli -c -h 127.0.0.1 -p 6379 --raw
e. 测试使用:
到此就ok了,可用了!
4. 关于配置文件redis.conf
- 我这里是为了方便把配置文件拷贝到了 make install 后的 bin 目录下(即:和常用启动等命令放在了一起)
当然,你也可以和 bin同级放,看心情吧cp /home/susu/soft/install/redis-6.0.16/redis.conf ./redisConfig/MyRedis.conf
- Redis 默认不是以守护进程的方式运行,可以通过修该配置 daemonize no,使用 yes 启用守护进程:
daemonize yes
5.其他问题
- 解决get key 的时候报错误:
(error)moved
报错原因:没有用集群模式连接(连接节点命令 没有加-c
参数)
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)