redis安装

博客围绕Redis展开,提及安装时出现‘jemalloc/jemalloc.h:没有那个文件或目录’的致命错误,还给出运行‘make test’的提示,同时介绍了停止Redis的操作(需进入安装目录)以及Linux重启时Redis自动启动的相关内容。
1.下载redis
wget http://download.redis.io/releases/redis-6.0.6.tar.gz
2. 解压
tar xzvf redis-6.0.6.tar.gz
3.安装
cd redis-6.0.6
make
cd src
make install PREFIX=/usr/local/redis
可能会报错:
make:cc 命令未找到的解决方法  
    没安装gcc,然后安装
yum install gcc
yum install gcc-c++
 
(25条消息) server.c:5166:39: error: ‘struct redisServer’ has no member named ‘maxmemory’_涂宗勋的技术博客-优快云博客

https://blog.youkuaiyun.com/tuzongxun/article/details/108461134

致命错误:jemalloc/jemalloc.h:没有那个文件或目录

    执行命令:make MALLOC=libc

Hint: It's a good idea to run 'make test'

    原来这根本就不是错,只是一个提示而已
4.移动配置文件到安装目录下
cd ../
mkdir /usr/local/redis/etc
mv redis.conf /usr/local/redis/etc
 5.配置redis为后台启动
vi /usr/local/redis/etc/redis.conf
//将daemonize no 改成daemonize yes
6.将redis加入到开机启动
vi /etc/rc.local
//在里面添加内容: /usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf  (意思就是开机调用这段开启redis的命令)
7.开启redis
/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
 

停止redis (进入redis安装目录)

./bin/redis-cli shutdown
8.将redis-cli,redis-server拷贝到bin下,让redis-cli指令可以在任意目录下直接使用
cp /usr/local/redis/bin/redis-server /usr/local/bin/
cp /usr/local/redis/bin/redis-cli /usr/local/bin/
9. 设置redis 密码
  a. 运行命令:redis-cli
  b.查看现有的 redis密码(可选操作,可以没有)
    运行命令:config get requirepass 如果没有设置过密码的话运行结果会如下图所示
  c. 设置redis 密码
     运行命令:config set requirepass hua#123(hua#123 为你要设置的密码),设置成功的话会返回‘OK’字样
  d.测试连接
    重启redis服务
    //(redis-cli -h 127.0.0.1 -p 6379 -a hua#123 hua#123 为你设置的密码))
    输入 redis-cli 进入命令模式,使用 auth '*****' (****为你设置的密码)登陆      
 10.让外网能够访问redis
    a.配置防火墙:   firewall-cmd --zone=public --add-port=6379/tcp --permanent (开放 6379 端口)
           systemctl restart firewalld (重启防火墙以使配置即时生效)
     查看系统所有开放的端口:firewall-cmd --zone= public -- list-ports
    
    b.此时 虽然防火墙开放了6379端口,但是外网还是无法访问的,因为redis监听的是127.0.0.1:6379,并不监听外网的请求。
      (一)把文件夹目录里的redis.conf配置文件里的bind 127.0.0.1前面加#注释掉
      (二)命令:redis-cli连接到redis后,通过 config get  daemonize(后端模式启动yes)和config get  protected-mode 是不是都为no,如果不是,就用config set 配置名 属性 改为no。
config set  protected-mode no

 

 
redis拒绝在保护模式下运行,没有绑定IP地址,没有授权密码,如果想从外部电脑连接redis的话,通常有两种解决方法可以选择:
(1)修改redis.conf配置文件,将protected-mode yes 改为no。
这时可能你的redis.conf配置文件中没有protected-mode yes语句,如果我们强行添加的话,就会报类似“不好的或者错误的执行语句:protected-mode yes(行号)”之类的错误,那我们又不得不把它移出。
(2)这时,可以使用第二种方法,设置密码。
直接修改redis.conf配置文件:在配置文件中添加" requirepass  访问密码 "的字段。(该方法redis重启修改的密码依然奏效)
或者,在redis启动时设置:
[ root@itcast01 redis-3.2.1 ] # ./redis-cli
127.0 .0 .1 :6379> config set requirepass 123456
OK
127.0 .0 .1 :6379>

 

最后,再重新启动虚拟机,重启redis
 

Linux重启 Redis自动启动

第一步:创建Redis启动服务
在系统开机启动项目录 /lib/systemd/system 目录添加 redis.service 文件
vi /lib/systemd/system/redis.service
第二步:写入启动命令
[Unit]
Description=The redis-server Process Manager
Documentation= https://redis.io/
After=network.target
[Service]
Type=forking
ExecStart=/usr/local/redis/bin/redis-server /usr/local/redis/etc/redis.conf
ExecStop=/usr/local/redis/bin/redis-cli shutdown
[Install]
WantedBy=multi-user.target
 
说明:大家要有自己的启动命令之后,改成自己的路径即可。
 
 
第三步:设置服务开机自启
systemctl enable redis
第四步:使用命令
# 启动 nginx
systemctl start redis
# 停止
systemctl stop redis
# 查看redis运行状态
systemctl status redis
ps aux | grep redis
 
 

第五:扩展了解

 
 
这个是用户启动项,意思是只有这个用户登陆的时候才启动:
/usr/lib/systemd/system/
 
 
这个是系统开机启动项,意思是开机就启动,不管哪个用户登录:
/lib/systemd/system/
 
 
查看所有的开机启动项:
systemctl list-unit-files |grep enabled
 
 
 
常用命令  
  redis-server /usr/local/redis/etc/redis.conf //启动redis
  pkill redis  //停止redis
  卸载redis:
    rm -rf /usr/local/redis //删除安装目录
    rm -rf /usr/bin/redis-* //删除所有redis相关命令脚本
    rm -rf /root/download/redis-4.0.4 //删除redis解压文件夹
8-启动redis:
两种方式:
redis-server &
加上`&`号使redis以后台程序方式运行
或者是
redis-server
9-检测后台进程是否存在
ps -ef |grep redis
10-检测6379端口是否在监听
netstat -lntp | grep 6379
有时候会报异常
 
原因: Redis已经启动
解决: 关掉Redis,重启即可
1.  
redis-cli shutdown
2.  
redis-server
然后你就能看到Redis愉快的运行了.
使用redis-cli客户端检测连接是否正常
1.  
redis-cli
2.  
127.0.0.1:6379> keys *
3.  
(empty list or set)
4.  
127.0.0.1:6379> set key "hello world"
5.  
OK
6.  
127.0.0.1:6379> get key
7.  
"hello world"
停止redis:
使用客户端
redis-cli shutdown
因为Redis可以妥善处理SIGTERM信号,所以直接kill -9也是可以的
kill -9 PID
#启动redis服务端
$ src/redis-server
#启动redis客户端
$ src/redis-cli
 
 
### 安装 Redis 数据库 Redis 是一个高性能的开源内存数据库,支持多种数据结构,适用于缓存、实时分析、消息队列等应用场景。以下是 Redis 在不同操作系统上的安装方法。 #### 在 Linux 系统上安装 Redis 1. **下载 Redis** 首先,访问 Redis 官网下载最新版本的源代码包。使用 `wget` 命令下载: ```bash wget https://download.redis.io/redis-stable.tar.gz ``` 2. **解压文件** 解压下载的压缩包,并进入解压后的目录: ```bash tar -zxvf redis-stable.tar.gz cd redis-stable ``` 3. **编译 Redis** 使用 `make` 命令编译 Redis 源代码。如果系统中没有安装 `gcc` 编译器,可以先通过以下命令安装: ```bash sudo apt-get install build-essential ``` 然后进行编译: ```bash make ``` 4. **安装 Redis** 编译完成后,执行 `make install` 命令将 Redis 安装到系统目录中: ```bash sudo make install ``` 5. **配置 Redis** 默认情况下,Redis 的配置文件 `redis.conf` 位于源代码目录中。可以将其复制到 `/etc/redis` 目录下,并修改配置文件中的 `daemonize` 参数为 `yes`,以便以后台模式运行 Redis: ```bash sudo cp redis.conf /etc/redis/ sudo nano /etc/redis/redis.conf ``` 6. **启动 Redis** 修改完配置文件后,可以通过以下命令启动 Redis: ```bash redis-server /etc/redis/redis.conf ``` 7. **测试 Redis** 使用 `redis-cli` 工具连接到 Redis 服务器,并执行简单的命令进行测试: ```bash redis-cli ping ``` 如果返回 `PONG`,则表示 Redis 服务器已经成功启动。 #### 在 Windows 系统上安装 Redis 1. **下载 Redis Windows 版本** Redis 官方并不直接提供 Windows 版本的安装包,但可以从 Microsoft 的 GitHub 仓库下载适用于 Windows 的 Redis: ```bash https://github.com/microsoftarchive/redis/releases ``` 2. **安装 Redis** 下载完成后,解压压缩包,并将解压后的文件夹移动到一个合适的位置,例如 `C:\Redis`。 3. **启动 Redis** 进入 Redis 目录,执行 `redis-server.exe` 文件启动 Redis 服务器: ```bash cd C:\Redis redis-server.exe ``` 如果没有指定配置文件,Redis 将使用默认配置启动。为了避免错误,建议创建一个 `redis.conf` 配置文件,并通过以下命令启动 Redis: ```bash redis-server.exe redis.conf ``` 4. **测试 Redis** 使用 `redis-cli.exe` 工具连接到 Redis 服务器,并执行简单的命令进行测试: ```bash redis-cli.exe ping ``` 如果返回 `PONG`,则表示 Redis 服务器已经成功启动。 #### 在 macOS 系统上安装 Redis 1. **使用 Homebrew 安装 Redis** 如果你使用的是 macOS,并且已经安装了 Homebrew,可以直接通过以下命令安装 Redis: ```bash brew install redis ``` 2. **启动 Redis** 安装完成后,可以通过以下命令启动 Redis 服务: ```bash brew services start redis ``` 3. **测试 Redis** 使用 `redis-cli` 工具连接到 Redis 服务器,并执行简单的命令进行测试: ```bash redis-cli ping ``` 如果返回 `PONG`,则表示 Redis 服务器已经成功启动。 #### 注意事项 - 在生产环境中,建议使用后台模式启动 Redis,并配置合适的持久化策略,以确保数据的安全性[^3]。 - 如果在 Windows 上启动 Redis 时遇到端口冲突问题,可以检查是否有其他程序占用了 6379 端口,或者尝试更改 Redis 的监听端口[^4]。
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值