MCPcopy Create free account
hub / github.com/Hel10-Web/Databasetools / handle_import

Function handle_import

pac/redis_export.go:143–196  ·  view source on GitHub ↗

Redis 导入

()

Source from the content-addressed store, hash-verified

141
142// Redis 导入
143func handle_import() {
144
145 bs, err := ioutil.ReadFile(FileName)
146 if err != nil {
147 Info("读取文件失败" + err.Error())
148 }
149 redis_info := RedisInfo{}
150 err = json.Unmarshal(bs, &redis_info)
151 if err != nil {
152 Info("不是合法的json文件" + err.Error())
153 }
154 //string
155 for _, v := range redis_info.String {
156 Rdb.Set(ctx, v.Key, v.Val, 0)
157 }
158 //hash
159 for _, v := range redis_info.Hash {
160 maps := map[string]string{}
161 for _, d := range v.Data {
162 maps[d.Field] = d.Val
163 }
164 Rdb.HMSet(ctx, v.Key, maps)
165 }
166 //set
167 for _, v := range redis_info.Set {
168
169 for _, v1 := range v.Data {
170 Rdb.SAdd(ctx, v.Key, v1)
171 }
172 }
173 //zset
174
175 for _, v := range redis_info.Zset {
176
177 zs := []*redis.Z{}
178 for _, v1 := range v.Data {
179 zs = append(zs, &redis.Z{
180 Member: v1.Member,
181 Score: v1.Score,
182 })
183 }
184
185 Rdb.ZAdd(ctx, v.Key, zs...)
186 }
187 //list
188 for _, v := range redis_info.List {
189 for _, v1 := range v.Data {
190 Rdb.RPush(ctx, v.Key, v1)
191 }
192 }
193
194 Success(FileName + " 导入成功")
195
196}

Callers 2

CloseSlaveFunction · 0.85
HelpFunction · 0.85

Calls 2

InfoFunction · 0.85
SuccessFunction · 0.85

Tested by

no test coverage detected