全部产品
Search
文档中心

Tair (Redis® OSS-Compatible):Migrasikan data menggunakan file AOF

更新时间:Nov 10, 2025

redis-cli adalah CLI bawaan asli dari Redis. Anda dapat menggunakan redis-cli untuk memigrasikan data yang disimpan dalam file append-only (AOF) dari database Redis yang dikelola sendiri ke instance Tair (Redis OSS-compatible). Solusi ini menawarkan fleksibilitas, efisiensi, dan otomatisasi, serta memastikan konsistensi dan integritas data yang dimigrasikan. Namun, solusi ini tidak mendukung sinkronisasi real-time, melainkan hanya mendukung migrasi data offline.

Disarankan untuk melakukan migrasi data selama downtime terjadwal atau pastikan tidak ada data baru yang ditulis selama proses migrasi.

Catatan

redis-cli adalah program terminal yang mengirim perintah ke dan membaca balasan dari server Redis. redis-cli tidak dirancang untuk menangani skenario migrasi online yang kompleks. Jika Anda ingin melakukan migrasi real-time online, Anda dapat menggunakan Data Transmission Service (DTS). Untuk informasi lebih lanjut, lihat Gunakan DTS untuk Memigrasikan Data dari Database Redis yang Dikelola Sendiri ke Instance Tair (Redis OSS-compatible).

Prasyarat

  • Alamat IP klien Anda telah ditambahkan ke daftar putih instance Tair (Redis OSS-compatible). Untuk informasi lebih lanjut, lihat Konfigurasikan Daftar Putih.

  • Persistensi file hanya-tambah (AOF) diaktifkan untuk instans Redis yang dikelola sendiri. Jika fitur ini belum diaktifkan, jalankan perintah CONFIG SET appendonly yes untuk mengaktifkannya.

  • Persistensi hibrid dinonaktifkan untuk instans Redis yang dikelola sendiri. Jika instans yang dikelola sendiri adalah Redis 5.0 atau yang lebih baru, jalankan perintah CONFIG SET aof-use-rdb-preamble no untuk menonaktifkan persistensi hibrid.

Prosedur

  1. Sambungkan ke instance Redis yang dikelola sendiri dan picu penulisan ulang AOF secara manual untuk menyimpan AOF terbaru.

    redis-cli -h <Alamat IP instance Redis yang dikelola sendiri> -p <Nomor port>  BGREWRITEAOF

    Output yang diharapkan: Penulisan ulang file hanya-tambah di latar belakang dimulai

  2. Gunakan AOF untuk mengimpor data ke instance Tair (Redis OSS-compatible) baru. Dalam contoh ini, AOF bernama appendonly.aof digunakan.

    redis-cli -h <Alamat IP instance Tair (Redis OSS-compatible)> -p <Nomor port>  -a <Kata sandi instance> --pipe < appendonly.aof

    Contoh: redis-cli -h r-bp1zxszhcgatnx****.redis.rds.aliyuncs.com -p 6379 -a user:password --pipe < appendonly.aof

    Output yang Diharapkan:

    Semua data telah ditransfer. Menunggu balasan terakhir...
    Balasan terakhir diterima dari server.
    kesalahan: 0, balasan: 90

    Jika pesan serupa dengan yang di atas dikembalikan, migrasi berhasil.

Apa yang harus dilakukan selanjutnya

Jika instance Redis yang dikelola sendiri tidak memerlukan persistensi AOF untuk diaktifkan sepanjang waktu, jalankan perintah berikut untuk menonaktifkan persistensi AOF setelah data diimpor:

redis-cli -h <Alamat IP instance Redis yang dikelola sendiri> -p <Nomor port instance Redis yang dikelola sendiri> CONFIG SET appendonly no

FAQ

  • T: Apa yang harus saya lakukan jika kesalahan ERR Protocol error: too big inline request dilaporkan selama impor?

    Jalankan perintah CONFIG GET aof-use-rdb-preamble untuk memeriksa apakah parameter aof-use-rdb-preamble dari instans diatur ke yes. Jika parameter diatur ke yes, jalankan perintah CONFIG SET aof-use-rdb-preamble no untuk mengatur parameter menjadi no. Kemudian, buat ulang file AOF dan coba lagi.

    Catatan

    Jika parameter aof-use-rdb-preamble diatur ke yes, beberapa data dalam file AOF dikompresi. Data terkompresi ini tidak dapat diurai atau diimpor oleh perintah redis-cli.

  • Bagaimana cara mengekspor AOF dari instance Tair (Redis OSS-compatible)?

    Instance Tair (Redis OSS-compatible) tidak mendukung ekspor AOF.

  • T: Mengapa impor data gagal dengan kesalahan ERR syntax error?

    Jika versi instance Tair (Redis OSS-compatible) lebih lama daripada versi instance Redis yang dikelola sendiri, masalah ini mungkin terjadi. Beli instance Tair (Redis OSS-compatible) dengan versi yang sama atau lebih baru dari instance Redis yang dikelola sendiri. Sebagai contoh, jika baik instance Redis yang dikelola sendiri maupun instance Tair (Redis OSS-compatible) kompatibel dengan Redis 7.0, kesalahan ini tidak akan terjadi.