---
# System prepended metadata

title: Redis
tags: [redis, database]

---

# Redis
###### tags: `database` `redis`

基本上是拿來做cache層的資料庫
裡面通常放一些比較不重要的資料，避免突發狀況時資料不見
另外也可以分擔其他主要DB的壓力
例如：
爬蟲比對資料是否在資料庫

### 開啟server（with password)

```bash=
redis-server --requirepass ${PASSWORD}
```

### 連線

```bash=
redis-cli -a ${PASSWORD}
```
### 基本指令

```
> set field value
> get field
```

### hash 指令

```
> hset key field value
> hget key field // 直接查詢某值
> hgetall field // 看裡面有啥鬼
```

### set 指令
redis支援set

```
> sadd field value
> scard field // 查看數量
> smember field //查看所有成員
```
### 刪除

```
> del field
> hdel key field // 直接刪掉某個pair
> spop field // 可以刪除順便返回值
```
### 設定TTL

```
> expire field time
> ttl field
```
