1. 程式人生 > 實用技巧 >在windows中安裝使用redis的幾種方法

在windows中安裝使用redis的幾種方法

背景:在學習redis的時候,剛開始直接用遠端伺服器安裝redis,然後開放防火牆埠來讓外部連線,為了方便沒有設密碼,也沒有及時關閉埠,結果很快就被注入攻擊用來挖礦了。redis配置檔案中的註釋也有說:因為redis執行非常快,外部攻擊每秒可以嘗試150k次密碼,所以即使設密碼也要使用很複雜的密碼,否則很容易被破解。最後我還是選擇一種合適的方式在windows下執行redis。

redis主要是執行在linux下的,官網沒有提供windows版本,可以通過以下幾種方法在windows系統下使用redis,部分方法只適用於win10。

1.下載windows專用版

github上有windows專用版

下載連結:https://github.com/dmajkic/redis/downloads

基本步驟:

  • 下載軟體,解壓
  • 根據系統進入32bit或64bit目錄
  • 雙擊開啟redis-server.exe,執行redis服務
  • 雙擊開啟redis-cli.exe,執行命令視窗開始使用

這種直接執行的方式只能使用預設配置,配置檔案在當前目錄下:redis.conf,想要執行多個server的話,複製一份配置檔案,修改埠,用cmd在當前視窗開啟,redis-server.exe redis2.conf

優點:操作簡單,下載解壓就能用了
缺點:版本落後,可能導致學習時部分功能無法使用

2.安裝wsl(windows subsystem for linux)--適用於win10

基本步驟:

  • 開啟windows系統中的wsl功能。可以通過面板開啟或管理員模式下的powershell輸入Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux,然後重啟。

  • 安裝ubuntu。在微軟應用商店中搜索ubuntu,就可以下載安裝對應的系統。目前免費的還有其它系統如debian等,centos只有收費版,本文以ubuntu為例。

  • apt源改為國內的,不然網速太慢。

    sudo vim /etc/apt/sources.list

    替換為以下內容

    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-updates main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-backports main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ focal-security main restricted universe multiverse
    
  • 更新軟體源列表

    sudo apt-get update

  • 安裝redis-server

    sudo apt install redis-server

    配置檔案位置:/etc/redis/redis.conf

後面就跟在linux中一樣了,也可以開啟ssh,22埠,使用xshell來連線,假裝自己有一臺伺服器。。。

配置檔案路徑:
/etc/ssh/sshd_config
修改3項:
Port 22
PermitRootLogin yes
PasswordAuthentication yes

優點:可以使用新版軟體,基本類似linux下的體驗。

缺點:跟其它的虛擬機器平臺衝突,跟大部分安卓模擬器衝突

3.安裝虛擬機器

跟上面一種差不多,不展開了。
優點:相容性更好,比wsl穩定
缺點:安裝較麻煩,使用也不夠方便,不是重度使用者常駐後臺的話每次使用還要開啟軟體,再開啟系統。

4.docker

當前是使用window下的docker,基本步驟:

  • 安裝docker

    • 先開啟hyper-v
    • 下載docker 安裝
  • 獲取docker image

    docker pull redis:latest

    檢視是否開啟docker images

  • 建立並執行redis容器

    docker run -itd --name myredis -p 6379:6379 redis
    檢視:docker container ls -all

    引數:

    • i:以互動模式執行容器,通常跟t一起使用
    • t:為容器重新分配一個偽輸入終端,通常與i一起使用
    • d:後臺執行容器
    • p:指定埠對映,格式為:本機埠:容器埠,這樣,外部就可以用本機IP:本機埠的方式訪問到redis
    • name:容器名稱
    • redis:映象名稱,獲取映象時用redis:latest,執行容器時用redis也可以,畢竟預設就是latest
  • 在redis容器執行

    docker exec -it myredis /bin/bash
    在開啟的bash中測試
    redis-cli

這種方式對於經常使用docker的使用者來說應該是比較方便的,自己也剛接觸docker就不多評論了。

總結:

個人感覺wsl的方式比較方便且接近日常使用linux的體驗,目前也是用這種方法,也許以後對docker更熟悉了會改用docker,到時候再更新。