# قواعد البيانات

> إنشاء وإدارة قواعد البيانات على تاروت

# قواعد البيانات

تاروت تتيح لك إنشاء قواعد بيانات PostgreSQL مُدارة ببضع نقرات. قواعد البيانات تعمل على بنية تاروت التحتية مع تجميع الاتصالات، وتشفير TLS للاتصالات الخارجية، ومؤشرات الاستخدام في لوحة التحكم.

## قواعد البيانات المدعومة

| قاعدة البيانات | الإصدار | حالة الاستخدام |
|----------------|---------|----------------|
| **PostgreSQL** | 16 | بيانات علاقية، بحث نصي، JSON |

> MySQL وMariaDB وMongoDB وRedis على خارطة الطريق وغير متاحة بعد.

## إنشاء قاعدة بيانات

1. اذهب إلى **قواعد البيانات** في الشريط الجانبي.
2. انقر **قاعدة بيانات جديدة**.
3. اختر مستوى الخطة.
4. أدخل اسمًا ووصفًا إن أردت. إذا تركت الاسم فارغًا، تولّد تاروت اسمًا تلقائيًا.
5. انقر **إنشاء قاعدة بيانات**.

لا يوجد إصدار أو بيانات اعتماد لتختارها: كل قاعدة بيانات تعمل بـ PostgreSQL 16، وتولّد تاروت اسم قاعدة البيانات والمستخدم وكلمة المرور تلقائيًا. قاعدة البيانات جاهزة خلال ثوانٍ، وتفاصيل الاتصال تظهر في صفحة تفاصيل قاعدة البيانات.

## الاتصال بقاعدة البيانات

### سلسلة الاتصال

انسخ سلسلة الاتصال من صفحة تفاصيل قاعدة البيانات. ومن واجهة سطر الأوامر، يعيدها `tarout db info <db> --json` في الحقل `externalConnectionString` (أما المخرجات العادية لـ `tarout db info` فتخفي كلمة المرور):

```bash
tarout db info <db> --json
```

تتضمن السلسلة المضيف والمنفذ واسم قاعدة البيانات والمستخدم وكلمة المرور و`sslmode=require`، فاستخدمها كما هي بدلًا من تركيبها يدويًا. الاتصالات من خارج تاروت تستخدم TLS دائمًا. للتحقق من الشهادة، نزّل شهادة CA من صفحة قاعدة البيانات واستبدل `sslmode=require` بـ `sslmode=verify-full&sslrootcert=/path/to/tarout-postgres-ca.pem`.

### من تطبيقك

عند ربط قاعدة بيانات بتطبيق على تاروت، تُكتب متغيرات الاتصال (`DATABASE_URL` و`DIRECT_DATABASE_URL` و`PGHOST` و`PGPORT` و`PGUSER` و`PGPASSWORD` و`PGDATABASE`) في بيئة التطبيق تلقائيًا.

أما التطبيق المستضاف في مكان آخر، فأضف سلسلة الاتصال التي نسختها كـ [متغير بيئة](https://tarout.sa/docs/applications/environment-variables):

```bash
DATABASE_URL="<سلسلة الاتصال المنسوخة من لوحة التحكم>"
```

## النسخ الاحتياطية

تنسخ تاروت خوادم قواعد البيانات المشتركة احتياطيًا يوميًا للتعافي من الكوارث. لا يستعيد هذه النسخ إلا فريق تاروت، ولخادم كامل فقط، لذا فهي ليست نقاط استعادة لقاعدة بيانات واحدة.

للاحتفاظ بنسخك الاحتياطية الخاصة من قاعدة البيانات، أرسلها إلى تخزين تملكه:

1. أضف وجهة نسخ احتياطي (أي حاوية متوافقة مع S3) من **الإعدادات ← وجهات النسخ الاحتياطي**.
2. افتح تبويب **النسخ الاحتياطية** في صفحة قاعدة البيانات وأنشئ جدولًا يكتب إلى تلك الوجهة.

تعمل الجداول وفق تعبير cron، ويمكنها الاحتفاظ بأحدث N ملفات فقط. ومن التبويب نفسه يمكنك تشغيل نسخة احتياطية عند الطلب والاستعادة من ملف محفوظ. النسخ الاحتياطي إلى تخزينك الخاص متاح لقواعد البيانات في المستويات المدفوعة (Starter وStandard وPro). راجع صفحة [PostgreSQL](https://tarout.sa/docs/databases/postgres) لأوامر واجهة سطر الأوامر.

## اعرف المزيد

- [PostgreSQL](https://tarout.sa/docs/databases/postgres)
- [MySQL](https://tarout.sa/docs/databases/mysql) (غير متاحة بعد)

---

## Every Tarout agent guide

- [Start Here (Agents)](https://tarout.sa/docs/for-ai/start.md)
- [Overview](https://tarout.sa/docs/for-ai.md)
- [Deploying an app](https://tarout.sa/docs/for-ai/deploy.md)
- [Databases](https://tarout.sa/docs/for-ai/database.md)
- [Object storage](https://tarout.sa/docs/for-ai/storage.md)
- [Custom domains](https://tarout.sa/docs/for-ai/domains.md)
- [Plans and upgrades](https://tarout.sa/docs/for-ai/billing.md)
- [Troubleshooting](https://tarout.sa/docs/for-ai/troubleshoot.md)
- [Agent Onboarding](https://tarout.sa/docs/for-ai/onboarding.md)
- [CLI Reference](https://tarout.sa/docs/for-ai/cli-reference.md)
- [CLI JSON Schema](https://tarout.sa/docs/for-ai/cli-json-schema.md)

Whole corpus in one file: https://tarout.sa/llms-full.txt · index: https://tarout.sa/llms.txt
Any docs page is raw markdown at the same URL + `.md`. Short link to the entry point: https://tarout.sa/deploy.md
