今更ながら、初めてNoSQLを触りました。
最新RedisのUbuntuへのインストールとPythonでRedisを使うまでのメモです。aptで入れようとしたらReidsのバージョンが古かったので、公式から最新の安定版をダウンロードしています。
Redisのデータ型とクエリについては別記事「【初心者向け】Redisのデータ型とPythonでの使い方サンプル」を参照ください。
環境
前提としてCURLとpyenvが入っているくらいでしょうか。pyenvインストールと設定については記事「UbuntuにpyenvとvenvでPython開発環境構築」を参照ください。
種類 | バージョン | 内容 |
---|---|---|
OS | Ubuntu18.04.01 LTS | 仮想で動かしています |
Redis | 5.0.4 | 2019/3/22時点でStableの最新です |
pyenv | 1.2.9 | 複数Python環境を使うことがあるのでpyenv使っています |
Python | 3.7.2 | pyenv上でpython3.7.2を使っています パッケージはvenvを使って管理しています |
手順
公式「Installation」をほぼそのまま実行しています。
1. Redisダウンロード
Redisをダウンロードして解凍。
wget http://download.redis.io/releases/redis-5.0.4.tar.gz
tar xzf redis-5.0.4.tar.gz
2. Redisビルドとインストール
makeでビルド。
cd redis-5.0.4
make
インストール。
sudo make install
##3. Redis起動と確認
Redisの起動。デフォルトで/usr/local/bin/にインストールされていました。
/usr/local/bin/redis-server
CLIを使ってインストール確認
/usr/local/bin/redis-cli
127.0.0.1:6379> set foo bar
OK
127.0.0.1:6379> get foo
"bar"
127.0.0.1:6379> exit
##4. redis-pyインストール
venvの仮想環境py37でpipを使ってredis-pyをインストール。バージョン3.2.1がインストールされました。
source venv/py37/bin/activate
pip install redis
##5. redis-py確認
cliからパッケージをimportし、先程登録した"foo"に対する値を取得できるか確認します。
python
Python 3.7.2 (default, Jan 6 2019, 18:40:05)
[GCC 7.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> from redis import Redis
>>> r = Redis()
>>> r.get("foo")
b'bar'
>>> r.delete("foo")
1
>>> exit()