数据库持久化的两种实现方式

对数据库服务里的数据进行持久化存储,既可以做数据备份,也方面数据传输。

目前主要有两种实现方式:

一.创建快照

Mysql快照
Mysql的dump工具,可以将数据导出为.sql文件,通过这个sql文件,可以作数据恢复。

$ mysqldump -h xxx -uroot -p databasename > ~/data_backup/database.sql 

Redis的rdb
redis客户端下发送save/bgsave指令,会创建rdb文件。默认文件名为dump.rdb

127.0.0.1:6379> save
127.0.0.1:6379> bgsave

注意,如何快速查找dump.rdb位置
1.使用config命令

127.0.0.1:6379> CONFIG GET dir
1) "dir"
2) "/var/lib/redis"

2.通过redis.conf配置文件,找到工作目录dir配置
如何快速找到redis.conf文件?再客户端已连接的情况下使用info server命令

127.0.0.1:6379> info server
# Server
redis_version:5.0.3
redis_git_sha1:00000000
redis_git_dirty:0
redis_build_id:23238c6957772153
redis_mode:standalone
os:Linux 5.0.0-32-generic x86_64
arch_bits:64
multiplexing_api:epoll
atomicvar_api:atomic-builtin
gcc_version:8.3.0
process_id:855
run_id:8b009f0b92e3d738e49ab03fdad7766dbb3988c2
tcp_port:6379
uptime_in_seconds:402219
uptime_in_days:4
hz:10
configured_hz:10
lru_clock:15054015
executable:/usr/bin/redis-server
config_file:/etc/redis/redis.conf

或者

$ redis-cli -p 6379 info server |grep config_file
config_file:/etc/redis/redis.conf

二.记录写操作日志(inset/update/delete)

Mysql的binlog

Redis的aof

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章