Panduan Pengurusan & Migrasi Fail Pangkalan Data ServBay
ServBay ialah persekitaran pembangunan web tempatan yang hebat, menggabungkan pelbagai sistem pengurusan pangkalan data dan menguruskan fail datanya secara teratur. Memahami struktur laluan fail pangkalan data di ServBay adalah penting untuk pembangun melakukan backup, pemulihan dan migrasi data secara selamat.
Artikel ini menerangkan secara terperinci struktur laluan fail pangkalan data ServBay serta memberi panduan pengurusan fail menggunakan alat baris perintah standard dan langkah migrasi antara persekitaran yang berbeza.
TIP
ServBay menyediakan fungsi backup dan pemulihan data, membolehkan anda melakukan backup MySQL, MariaDB dan PostgreSQL secara automatik atau manual. Rujuk Backup & Restore untuk maklumat lanjut.
Struktur Laluan Fail Pangkalan Data ServBay
Bagi memudahkan pengurusan dan pengasingan data versi pangkalan data berbeza, ServBay menyimpan semua fail pangkalan data dalam direktori /Applications/ServBay/db
. Fail-fail ini dikategorikan mengikut jenis pangkalan data, kemudian dipecahkan lagi mengikut nombor versi utama.
Contoh struktur direktori /Applications/ServBay/db
adalah seperti berikut:
/Applications/ServBay/db
├── mysql
│ ├── 8.0
│ └── 8.1
├── mariadb
│ ├── 10.10
│ ├── 10.11
│ ├── 10.5
│ ├── 10.6
│ ├── 10.7
│ ├── 10.8
│ ├── 10.9
│ ├── 11.0
│ ├── 11.1
│ ├── 11.2
│ └── 11.3
├── postgresql
│ ├── 10
│ ├── 11
│ ├── 12
│ ├── 13
│ ├── 14
│ ├── 15
│ └── 16
└── redis
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
Penjelasan Struktur Direktori
/Applications/ServBay/db
: Direktori utama untuk semua fail pangkalan data ServBay.mysql
: Menempatkan fail data MySQL; subdirektori mengikut versi utama seperti8.0
,8.1
.mariadb
: Menempatkan fail data MariaDB; subdirektori mengikut versi utama seperti10.11
,11.3
.postgresql
: Menempatkan fail data PostgreSQL; subdirektori mengikut versi utama seperti15
,16
.redis
: Menyimpan fail persisten Redis, biasanya faildump.rdb
.
Struktur ini membolehkan anda memasang dan menjalankan pelbagai versi utama pangkalan data yang sama dalam ServBay, dengan fail data setiap versi diasingkan secara sepenuhnya.
Pengurusan Fail Pangkalan Data
Dalam pembangunan tempatan, anda sering perlu melakukan backup, pemulihan atau migrasi pangkalan data. Berikut ialah cara mengurus operasi ini menggunakan baris perintah standard bagi setiap pangkalan data. Pastikan anda menggunakan terminal ServBay atau sudah mengkonfigurasi pembolehubah PATH agar klien ServBay boleh dipanggil terus.
Backup Pangkalan Data
Backup berkala adalah langkah penting untuk keselamatan data. Berikut cara membuat backup untuk MySQL, MariaDB, PostgreSQL, dan Redis dalam ServBay.
Backup MySQL
Gunakan alat mysqldump
untuk backup pangkalan data MySQL:
bash
# Tukar ke terminal ServBay, atau pastikan PATH mengandungi direktori bin ServBay
# Contoh: export PATH="/Applications/ServBay/bin:$PATH"
mysqldump -u your_username -p your_database > /Applications/ServBay/backup/your_database.sql
1
2
3
4
2
3
4
your_username
: Gantikan dengan nama pengguna pangkalan data anda.your_database
: Gantikan dengan nama pangkalan data untuk di-backup./Applications/ServBay/backup/your_database.sql
: Gantikan dengan laluan dan nama fail backup. Disarankan simpan backup di luar direktori ServBay, seperti di folder pengguna anda.
Backup MariaDB
Kaedah backup MariaDB adalah sama seperti MySQL, gunakan mysqldump
:
bash
# Tukar ke terminal ServBay, atau pastikan PATH mengandungi direktori bin ServBay
mysqldump -u your_username -p your_database > /Applications/ServBay/backup/your_database.sql
1
2
3
2
3
- Penjelasan parameter seperti di atas.
Backup PostgreSQL
Untuk backup PostgreSQL, gunakan alat pg_dump
. Perhatikan bahawa PostgreSQL di ServBay biasanya berhubung menggunakan Unix Domain Socket dengan laluan default /Applications/ServBay/tmp
.
bash
# Tukar ke terminal ServBay, atau pastikan PATH mengandungi direktori bin ServBay
pg_dump -h /Applications/ServBay/tmp -U your_username -d your_database -F c -b -v -f /Applications/ServBay/backup/your_database.dump
1
2
3
2
3
- Parameter sambungan: Menentukan cara sambungan ke server PostgreSQL.
- macOS:
-h /Applications/ServBay/tmp
(laluan Unix Domain Socket) - Windows:
-h localhost -p 5432
(sambungan TCP)
- macOS:
-U your_username
: Gantikan dengan nama pengguna pangkalan data anda.-d your_database
: Gantikan dengan nama pangkalan data untuk di-backup.-F c
: Output dalam format arkib tersuai (disarankan).-b
: Sertakan objek besar (blobs).-v
: Paparkan proses backup secara terperinci.-f /Applications/ServBay/backup/your_database.dump
: Gantikan dengan laluan dan nama fail backup.
Backup Redis
Backup Redis biasanya dengan menyalin fail persisten dump.rdb
:
bash
# Tukar ke terminal ServBay
# Pastikan Redis sedang berjalan, atau telah dikonfigurasi untuk autosave (BGSAVE)
cp /Applications/ServBay/db/redis/dump.rdb /Applications/ServBay/backup/dump.rdb
1
2
3
4
2
3
4
/Applications/ServBay/db/redis/dump.rdb
: Laluan fail persisten Redis secara default./Applications/ServBay/backup/dump.rdb
: Gantikan dengan laluan dan nama fail backup pilihan anda.
Pemulihan Pangkalan Data
Untuk memulihkan data selepas kehilangannya atau rollback ke status terdahulu, gunakan fail backup yang telah dibuat.
Pulih MySQL
Gunakan klien mysql
untuk memulihkan fail backup MySQL:
bash
# Tukar ke terminal ServBay
mysql -u your_username -p your_database < /Applications/ServBay/backup/your_database.sql
1
2
3
2
3
your_username
: Gantikan dengan nama pengguna pangkalan data anda.your_database
: Gantikan dengan nama pangkalan data yang ingin dipulihkan. Pangkalan data ini mesti telah dicipta terlebih dahulu./Applications/ServBay/backup/your_database.sql
: Laluan fail backup untuk dipulihkan.
Pulih MariaDB
Kaedah pemulihan MariaDB adalah sama seperti MySQL, gunakan klien mysql
:
bash
# Tukar ke terminal ServBay
mysql -u your_username -p your_database < /Applications/ServBay/backup/your_database.sql
1
2
3
2
3
- Penjelasan parameter seperti di atas.
Pulih PostgreSQL
Untuk format backup tersuai PostgreSQL, gunakan alat pg_restore
. Anda perlu spesifikkan laluan socket -h /Applications/ServBay/tmp
:
bash
# Tukar ke terminal ServBay
pg_restore -h /Applications/ServBay/tmp -U your_username -d your_database -v /Applications/ServBay/backup/your_database.dump
1
2
3
2
3
- Parameter sambungan: Menentukan cara sambungan ke server PostgreSQL.
- macOS:
-h /Applications/ServBay/tmp
(laluan Unix Domain Socket) - Windows:
-h localhost -p 5432
(sambungan TCP)
- macOS:
-U your_username
: Gantikan dengan nama pengguna pangkalan data anda.-d your_database
: Gantikan dengan nama pangkalan data untuk dipulihkan. Pangkalan data ini perlu sudah wujud.-v
: Paparkan proses pemulihan secara terperinci.- Laluan fail backup: Gantikan dengan laluan fail backup.
- macOS:
/Applications/ServBay/backup/your_database.dump
- Windows:
C:\ServBay\backup\your_database.dump
- macOS:
Pulih Redis
Pemulihan Redis adalah dengan menggantikan fail dump.rdb
hasil backup ke direktori data Redis. Penting: Pastikan servis Redis telah dihentikan dahulu sebelum melakukan langkah ini.
bash
# Tukar ke terminal ServBay
# Hentikan servis Redis dalam ServBay
# Salin fail backup
cp /Applications/ServBay/backup/dump.rdb /Applications/ServBay/db/redis/dump.rdb
# Mulakan semula servis Redis dalam ServBay
1
2
3
4
5
2
3
4
5
/Applications/ServBay/backup/dump.rdb
: Laluan fail backup anda./Applications/ServBay/db/redis/dump.rdb
: Laluan fail persisten Redis secara default.
Migrasi Pangkalan Data
Migrasi pangkalan data bermaksud memindahkan data dari satu persekitaran (contohnya instance ServBay lain, server jauh atau persekitaran tempatan lain) ke persekitaran baru. Proses ini melibatkan eksport dari sumber, kemudian import ke destinasi.
Migrasi MySQL
Migrasi MySQL adalah situasi biasa dalam pembangunan.
Eksport pangkalan data dari sumber:
bash# Lakukan di terminal sumber mysqldump -u your_source_username -p your_database > your_database.sql
1
2your_source_username
: Nama pengguna pangkalan data pada sumber.your_database
: Nama pangkalan data yang ingin dimigrasi.your_database.sql
: Nama fail eksport SQL.
Salin fail SQL ke destinasi: Gunakan
scp
atau alat pemindahan fail lain ke direktori yang boleh diakses ServBay destinasi (contoh/Applications/ServBay/backup/
).Cipta pangkalan data baharu di destinasi:
bash# Lakukan di terminal ServBay destinasi mysql -u your_target_username -p -e "CREATE DATABASE your_database;"
1
2your_target_username
: Nama pengguna pangkalan data ServBay destinasi.your_database
: Nama pangkalan data baharu (disarankan sama seperti sumber).
Import pangkalan data ke destinasi:
bash# Lakukan di terminal ServBay destinasi mysql -u your_target_username -p your_database < /path/to/your_database.sql
1
2/path/to/your_database.sql
: Laluan fail SQL sebenar di destinasi.
Migrasi MariaDB
Langkah Migrasi MariaDB adalah serupa kerana struktur fail dan alat yang digunakan sama seperti MySQL.
- Eksport pangkalan data dari sumber:bash
# Lakukan di terminal sumber mysqldump -u your_source_username -p your_database > your_database.sql
1
2 - Salin fail SQL ke destinasi.
- Cipta pangkalan data baharu di ServBay destinasi:bash
# Lakukan di terminal ServBay destinasi mysql -u your_target_username -p -e "CREATE DATABASE your_database;"
1
2 - Import pangkalan data ke destinasi:bash
# Lakukan di terminal ServBay destinasi mysql -u your_target_username -p your_database < /path/to/your_database.sql
1
2
Migrasi PostgreSQL
Migrasi PostgreSQL gunakan pg_dump
dan pg_restore
. Pastikan penggunaan laluan socket ServBay.
Eksport pangkalan data dari sumber:
bash# Lakukan di terminal sumber # Jika sumber ialah ServBay pg_dump -h /Applications/ServBay/tmp -U your_source_username -d your_database -F c -b -v -f your_database.dump # Jika sumber ialah sistem lain, ubah parameter sambungan mengikut keperluan
1
2
3
4your_source_username
: Nama pengguna pangkalan data pada sumber.your_database
: Nama pangkalan data yang ingin dimigrasi.your_database.dump
: Nama fail backup eksport.
Salin fail backup ke ServBay destinasi: Gunakan
scp
atau alat pemindahan fail ke direktori destinasi ServBay.Cipta pangkalan data baharu di destinasi:
bash# Lakukan di terminal ServBay destinasi # Sambung ke pangkalan data postgres default untuk penciptaan psql -h /Applications/ServBay/tmp -U your_target_username -d postgres -c "CREATE DATABASE your_database;"
1
2
3your_target_username
: Nama pengguna pangkalan data ServBay destinasi.your_database
: Nama pangkalan data baharu.
Import pangkalan data ke destinasi:
bash# Lakukan di terminal ServBay destinasi pg_restore -h /Applications/ServBay/tmp -U your_target_username -d your_database -v /path/to/your_database.dump
1
2/path/to/your_database.dump
: Laluan fail backup sebenar di destinasi.
Migrasi Redis
Migrasi Redis lazimnya dengan menyalin fail dump.rdb
secara terus.
Dapatkan fail
dump.rdb
dari sumber:bash# Lakukan di terminal sumber # Pastikan servis Redis dihentikan, atau tunggu sehingga BGSAVE selesai cp /path/to/source/redis/dump.rdb ./dump.rdb
1
2
3Salin fail ke direktori Redis ServBay destinasi:
bash# Lakukan di sumber atau pelayan perantara scp ./dump.rdb your_target_server:/Applications/ServBay/db/redis/dump.rdb
1
2your_target_server
: Alamat atau nama hos ServBay destinasi.- Penting: Pastikan servis Redis di
/Applications/ServBay/db/redis/
destinasi telah dihentikan sebelum salinan.
Mulakan semula servis Redis di ServBay destinasi: Bila Redis dimulakan, ia akan automatik memuatkan fail
dump.rdb
yang baharu.
Perkara Penting
- Hentikan servis: Sebelum menyalin atau memindahkan fail pangkalan data (terutamanya direktori data MySQL/MariaDB/PostgreSQL), pastikan servis pangkalan data telah dihentikan melalui GUI ServBay atau alat baris perintah. Menyalin fail semasa servis berjalan boleh menyebabkan kerosakan atau ketidakseimbangan data. Redis juga mesti dihentikan jika memulihkan fail
dump.rdb
. - Isu kebenaran: Pastikan pengguna yang menjalankan operasi salinan/import mempunyai hak akses yang cukup ke direktori dan fail berkaitan.
- Laluan fail: Semak laluan pemasangan ServBay anda (
/Applications/ServBay
secara default) dan laluan fail pangkalan data terutamanya untuk subdirektori yang berbeza mengikut versi. - Pengguna dan kebenaran: Selepas migrasi, semak pengguna, hak akses dan konfigurasi pangkalan data untuk kesepadanan dengan persekitaran baharu.
- Backup terbina dalam ServBay: ServBay juga menawarkan fungsi backup dan pemulihan terbina dalam melalui antaramuka grafik (GUI) untuk backup tetapan, fail laman, pangkalan data dan sijil SSL – sesuai sebagai pelengkap atau pengganti pengurusan fail manual.
Rumusan
ServBay memudahkan pengurusan pangkalan data dengan struktur fail yang teratur, membolehkan pembangun jelas mengurus data mengikut versi dan jenis pangkalan data. Artikel ini menerangkan lokasi fail pangkalan data untuk MySQL, MariaDB, PostgreSQL dan Redis serta memberi panduan langkah demi langkah untuk backup, pemulihan dan migrasi menggunakan alat baris perintah standard. Dengan menguasai kemahiran ini, anda dapat memastikan data projek selamat dan boleh dipindahkan antara pelbagai persekitaran pembangunan tempatan. Gunakan juga ciri-ciri lain ServBay seperti backup terbina dalam untuk mengoptimumkan kecekapan pembangunan dan pengurusan data anda.