服务器终端乱码问题

2022-10-27 13:43:31 浏览数 (1)

三不知 cat 了一下 redis 的储存文件(dump.rdb);结果服务器终端瞬间全部乱码!!!

# 问题

代码语言:javascript复制
[root@master redis]# cat dump.rdb 

# 现象

# 解决办法

代码语言:javascript复制
#reset //用reset终端复位命令解决问题

# 原因

dump.rdb 文件是由 Redis 自动生成数据储存的;但是这个文件里面具体的内容格式还真没有深究过。这里做个总结

  • 首先 Redis 的 RDB 文件是二进制格式的文件,部分二进制码是特殊的控制码(这里也是乱码的原因所在)
  • 默认情况下 每隔一段时间 redis 服务器程序会自动对数据库做一次遍历,把内存快照写在该文件里

# 深究

这里扩展一下如何解析redis的rdb文件

点击查看

代码语言:javascript复制
PS C:UsersAdministratorDesktopfsdownload> pip install rdbtools python-lzf
Looking in indexes: https://pypi.tuna.tsinghua.edu.cn/simple
Collecting python-lzf
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/e3/33/b8f67bbe695ccc39f868ae55378993a7bde1357a0567803a80467c8ce1a4/python-lzf-0.2.4.tar.gz (9.3 kB)
Collecting rdbtools
  Downloading https://pypi.tuna.tsinghua.edu.cn/packages/dd/e5/eebb748863d74b7f9d433e359b874d97e830e9d1b3e3d876b91b5cba6b9d/rdbtools-0.1.15.tar.gz (31 kB)
Requirement already satisfied: redis in c:usersadministratorappdatalocalprogramspythonpython37libsite-packages (from rdbtools) (3.3.2)
Using legacy 'setup.py install' for python-lzf, since package 'wheel' is not installed.
Using legacy 'setup.py install' for rdbtools, since package 'wheel' is not installed.
Installing collected packages: rdbtools, python-lzf
    Running setup.py install for rdbtools ... done
    Running setup.py install for python-lzf ... done
Successfully installed python-lzf-0.2.4 rdbtools-0.1.15
WARNING: You are using pip version 20.3.3; however, version 21.0.1 is available.
You should consider upgrading via the 'c:usersadministratorappdatalocalprogramspythonpython37python.exe -m pip install --upgrade pip' command.
PS C:UsersAdministratorDesktopfsdownload> rdb --command json .dump.rdb
[{
"xsw":"gogogo"}]
PS C:UsersAdministratorDesktopfsdownload>
  • 验证下可视化工具的 KEY-VALUE

0 人点赞