# बैकअप और रीस्टोर — MySQL Fundamentals: SQL, Joins और Transactions

Source: https://www.skillbyai.com/hi/mysql/sql-backup-restore

> mysqldump से MySQL database का backup और restore करें और cron से नियमित backups schedule करें।

## बैकअप लेना

`mysqldump` स्कीमा और डेटा को SQL स्टेटमेंट के रूप में फ़ाइल में लिखता है।

```bash
mysqldump -u root -p shop > shop_backup.sql
```

## रीस्टोर करना

डंप फ़ाइल को `mysql` में वापस दें ताकि डेटाबेस बिल्कुल वैसा ही दोबारा बन जाए।

```bash
mysql -u root -p shop < shop_backup.sql
```

## इसे स्वचालित करें

नियमित बैकअप के लिए `cron` से `mysqldump` शेड्यूल करें — एक सर्वर खोने का मतलब डेटा खोना नहीं होना चाहिए।

## अंतिम क्विज़ 1/8

अंतिम क्विज़

**Quiz:** कौन-सी key हर row को अद्वितीय रूप से पहचानती है?

- [ ] Foreign key
- [ ] Index only
- [x] Primary key
- [ ] View

*Answer:* Primary key. Primary key में duplicates और NULL नहीं होते।

## अंतिम क्विज़ 2/8

अंतिम क्विज़

**Quiz:** कौन-सा clause aggregation के बाद groups filter करता है?

- [ ] WHERE
- [ ] LIMIT
- [ ] ORDER BY
- [x] HAVING

*Answer:* HAVING. WHERE grouping से पहले और HAVING उसके बाद चलता है।

## अंतिम क्विज़ 3/8

अंतिम क्विज़

**Quiz:** कौन-सा join left table की सभी rows रखता है?

- [x] LEFT JOIN
- [ ] INNER JOIN
- [ ] CROSS JOIN only
- [ ] UNION

*Answer:* LEFT JOIN. बिना match वाले right-side columns NULL हो जाते हैं।

## अंतिम क्विज़ 4/8

अंतिम क्विज़

**Quiz:** धन के लिए कौन-सा data type सबसे अच्छा है?

- [ ] FLOAT
- [x] DECIMAL
- [ ] TEXT
- [ ] BOOLEAN

*Answer:* DECIMAL. DECIMAL बिना rounding errors के सटीक values रखता है।

## अंतिम क्विज़ 5/8

अंतिम क्विज़

**Quiz:** ROLLBACK क्या करता है?

- [ ] Commits changes
- [ ] Creates an index
- [x] Undoes changes since the transaction started
- [ ] Deletes the table

*Answer:* Undoes changes since the transaction started. यह START TRANSACTION से पहले की state लौटा देता है।

## अंतिम क्विज़ 6/8

अंतिम क्विज़

**Quiz:** EXPLAIN में type: ALL आमतौर पर क्या संकेत देता है?

- [ ] A perfect index use
- [ ] An empty table
- [ ] A syntax error
- [x] A full table scan

*Answer:* A full table scan. अक्सर इसका मतलब है कि उपयोगी index गायब है।

## अंतिम क्विज़ 7/8

अंतिम क्विज़

**Quiz:** Application के लिए root उपयोग करने से क्यों बचें?

- [x] It has far more privileges than needed
- [ ] It is slower
- [ ] It cannot connect remotely
- [ ] It lacks SELECT

*Answer:* It has far more privileges than needed. Least privilege compromise होने पर नुकसान सीमित करता है।

## अंतिम क्विज़ 8/8

अंतिम क्विज़

**Quiz:** MySQL database का logical backup कौन-सा tool बनाता है?

- [ ] mysqlcheck only
- [x] mysqldump
- [ ] ls
- [ ] git

*Answer:* mysqldump. mysqldump schema और data को SQL के रूप में लिखता है।
