Bird
Raised Fist0
Supabasecloud~10 mins

Backup and disaster recovery in Supabase - Interactive Code Practice

Choose your learning style10 modes available
Practice - 5 Tasks
Answer the questions below
1fill in blank
easy

Complete the code to create a backup of your Supabase database.

Supabase
const backup = await supabase.rpc('[1]');
Drag options to blanks, or click blank then click option'
Asave_backup
Bbackup_database
Cmake_backup
Dcreate_backup
Attempts:
3 left
💡 Hint
Common Mistakes
Using a function name that does not exist in Supabase.
Trying to call a method that is not related to backups.
2fill in blank
medium

Complete the code to restore a backup from a file.

Supabase
const result = await supabase.storage.from('backups').[1]('backup-file.sql');
Drag options to blanks, or click blank then click option'
Adownload
Bupload
Crestore
Ddelete
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'upload' instead of 'download' to get the backup file.
Trying to use a method that does not exist in Supabase storage.
3fill in blank
hard

Fix the error in the code to schedule automatic backups.

Supabase
await supabase.functions.[1]('schedule_backup', { cron: '0 0 * * *' });
Drag options to blanks, or click blank then click option'
Acall
Binvoke
Crun
Dexecute
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'call' or 'run' which are not valid Supabase function methods.
Trying to use 'execute' which is not supported.
4fill in blank
hard

Fill both blanks to check the status of a backup and log the result.

Supabase
const status = await supabase.backups.[1]('backup-id');
console.[2](status);
Drag options to blanks, or click blank then click option'
AgetStatus
Blog
Cprint
Dfetch
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'fetch' instead of 'getStatus' for backup status.
Using 'print' which is not a console method in JavaScript.
5fill in blank
hard

Fill all three blanks to create a backup, check its status, and notify the user.

Supabase
const backupId = await supabase.backups.[1]();
const status = await supabase.backups.[2](backupId);
alert('Backup status: ' + status.[3]);
Drag options to blanks, or click blank then click option'
AcreateBackup
BgetStatus
Cstate
DbackupNow
Attempts:
3 left
💡 Hint
Common Mistakes
Using 'backupNow' which is not a valid method.
Trying to alert the whole status object instead of its 'state' property.

Practice

(1/5)
1. What is the main purpose of backups in Supabase?
easy
A. To save copies of data to prevent loss
B. To speed up database queries
C. To increase user authentication security
D. To reduce storage costs

Solution

  1. Step 1: Understand what backups do

    Backups create copies of your data so you can restore it if something goes wrong.
  2. Step 2: Identify the main goal in Supabase context

    Supabase backups protect your data from accidental loss or corruption.
  3. Final Answer:

    To save copies of data to prevent loss -> Option A
  4. Quick Check:

    Backups = Data safety [OK]
Hint: Backups always save data copies for safety [OK]
Common Mistakes:
  • Confusing backups with performance improvements
  • Thinking backups reduce costs
  • Mixing backups with security features
2. Which Supabase feature allows you to create backups manually?
easy
A. Automated backups
B. Real-time replication
C. Database indexing
D. Manual snapshots

Solution

  1. Step 1: Identify manual backup options in Supabase

    Manual snapshots let you create backups whenever you want, on demand.
  2. Step 2: Differentiate from automated backups

    Automated backups happen on a schedule, not manually triggered by users.
  3. Final Answer:

    Manual snapshots -> Option D
  4. Quick Check:

    Manual backup = Manual snapshots [OK]
Hint: Manual backups are called snapshots in Supabase [OK]
Common Mistakes:
  • Confusing automated backups with manual ones
  • Thinking real-time replication is a backup
  • Mixing indexing with backup features
3. Given this Supabase backup command snippet:
const backup = await supabase.storage.from('backups').upload('backup-2024-06-01.sql', file);
console.log(backup.error);

What will be the output if the upload succeeds?
medium
A. undefined
B. Error: File not found
C. null
D. Upload failed

Solution

  1. Step 1: Understand Supabase upload response

    If the upload is successful, the error property is null, meaning no error occurred.
  2. Step 2: Check console.log output

    Logging backup.error will print null on success, not a string or undefined.
  3. Final Answer:

    null -> Option C
  4. Quick Check:

    Success error = null [OK]
Hint: Successful upload error is null, not a message [OK]
Common Mistakes:
  • Expecting error to be undefined on success
  • Confusing error messages with success
  • Assuming upload returns a string on success
4. You wrote this code to restore a backup but get an error:
const { data, error } = await supabase.rpc('restore_backup', { backup_id: 123 });
if (error) console.log(error.message);

What is a likely cause of the error?
medium
A. The 'restore_backup' function does not exist in the database
B. The backup_id parameter is missing
C. Supabase storage bucket is full
D. The file format is incorrect

Solution

  1. Step 1: Check the RPC function existence

    If the 'restore_backup' function is not defined in the database, calling it causes an error.
  2. Step 2: Verify parameters and storage

    The backup_id is provided, and storage fullness or file format errors usually cause different messages.
  3. Final Answer:

    The 'restore_backup' function does not exist in the database -> Option A
  4. Quick Check:

    Missing function = error [OK]
Hint: Check if the called function exists in the database [OK]
Common Mistakes:
  • Assuming parameter missing without checking code
  • Blaming storage when error is function-related
  • Confusing file format issues with RPC errors
5. You want to ensure your Supabase project recovers quickly after a disaster. Which combination of backup strategies is best?
hard
A. Only automated backups with daily frequency
B. Automated backups daily plus manual snapshots before big updates
C. Manual snapshots only when major changes occur
D. No backups, rely on real-time replication

Solution

  1. Step 1: Understand backup types and frequency

    Automated backups provide regular safety, while manual snapshots add extra protection before big changes.
  2. Step 2: Combine strategies for fast disaster recovery

    Using both ensures you can restore recent data and specific points before updates, minimizing data loss and downtime.
  3. Final Answer:

    Automated backups daily plus manual snapshots before big updates -> Option B
  4. Quick Check:

    Combine automated + manual for best recovery [OK]
Hint: Use both automated and manual backups for safety [OK]
Common Mistakes:
  • Relying only on manual snapshots risks missing backups
  • Ignoring manual snapshots before big changes
  • Assuming real-time replication replaces backups
Recommended

Ready to prove it?

Pass the test and this pattern moves unknown strong while earning +1 Grip toward your certificate.

10 questions~5 mineasy hard