# Create A New SQL Database Instance From Backup

สร้าง Database Instance ใหม่ จาก Backup เพื่อกู้คืน Database หากเกิดเหตุการณ์ไม่คาดคิด&#x20;

Database Instance ที่ได้ จะมีข้อมูลตาม Backup ทุกประการ&#x20;

## Prerequisite

* มี Backup ใน Project ([ขั้นตอนการสร้าง Backup](https://docs-epc.gitbook.io/ncs-documents/database-as-a-service/sql-database/manage-sql-database-backup/create-backup))

## Instruction

### 1. เลือกคำสั่ง Create Database Instance

เลือกคำสั่ง Create Database Instance ได้จาก 2 ที่ ดังนี้

* คำสั่ง Create Database Instance ภายใต้ปุ่ม “MORE” ของแต่ละ Backup ที่หน้า Backups

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FkCNXGmgzUZD9cm5rFoR5%2Fimage.png?alt=media&#x26;token=52b1f1f1-f136-4889-9dfd-0f3e30a75344" alt=""><figcaption><p>คำสั่ง Create Database Instance ภายใต้ปุ่ม “MORE” ที่หน้า Backups</p></figcaption></figure>

* คำสั่ง Create Database Instance ภายใต้ปุ่ม “MORE” ของแต่ละ Backup ที่ tab Backup หน้า Database Instance Detail

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FkpvQCh6nzVUOyl4Qk4CM%2Fimage.png?alt=media&#x26;token=29afaf03-7621-425b-82a0-76d4ef1e942b" alt=""><figcaption><p>คำสั่ง Create Database Instance ภายใต้ปุ่ม “MORE” ที่หน้า Database Instance Detail</p></figcaption></figure>

### 2. เลือก Availability Zone

เลือก Availability Zone ของ Database Instance ที่ต้องการได้จาก tab “Availability Zone” และที่มุมซ้าย โดยปัจจุบันจะให้บริการเฉพาะ NCP-BKK และจะเปิดให้บริการเพิ่มในอนาคต

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FQNUBUmjEuuXjZjg1oDAq%2Fimage.png?alt=media&#x26;token=a6a3ffc0-24ae-470e-9f99-fd4589178472" alt=""><figcaption><p>เลือก Availability Zone</p></figcaption></figure>

### 3. กำหนดชื่อของ Database Instance <a href="#id-2.-database-instance" id="id-2.-database-instance"></a>

กำหนดชื่อของ Database Instance ที่ทำการสร้างจาก Backup หลังจากนั้นกดปุ่ม Next หรือกดที่ tab Machine Type เพื่อไปขั้นตอนถัดไป

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FQLV0Kn82cfzXFVFd3w3T%2Fimage.png?alt=media&#x26;token=b2f25768-5b0c-4e99-b536-517be22d04e6" alt=""><figcaption></figcaption></figure>

### 4. เลือก Machine Type <a href="#id-4.-machine-type" id="id-4.-machine-type"></a>

เลือก Machine Type หรือสเปคของ Database Instance หลังจากนั้นกดปุ่ม Next หรือกดที่ tab Database Storage เพื่อไปขั้นตอนถัดไป

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FgmatXAKvSEy43AWwlBJC%2Fimage.png?alt=media&#x26;token=d67431e6-f0c4-4d95-a576-43d84bca6340" alt=""><figcaption><p>เลือก Machine Type</p></figcaption></figure>

{% hint style="info" %}
แนะนำให้เลือก Machine Type ที่สเปคเท่ากับหรือสูงกว่า Database Instance เดิม เพื่อการใช้งานที่ต่อเนื่องและลดการเกิดปัญหา
{% endhint %}

### 5.เลือก Performance Type

เลือก Performance Type ของ Database Storage โดยปัจจุบันได้ให้บริการ 2 ชนิดดังต่อไปนี้

* DB\_Standard\_SSD
* DB\_Premium\_SSD

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FeBgkBuxAhV2UTsm0ykrd%2Fimage.png?alt=media&#x26;token=011b90ca-ffa8-40a7-b01b-b76a54fc476e" alt=""><figcaption><p>เลือก Performance Type</p></figcaption></figure>

{% hint style="info" %}
แนะนำให้เลือก Performance Type ของ Database Storage ที่สเปคเท่ากับหรือสูงกว่า Database Instance เดิม เพื่อการใช้งานที่ต่อเนื่องและลดการเกิดปัญหา
{% endhint %}

### 6. กำหนดขนาดของ Storage

กำหนดขนาดของ Database Storage และสามารถเพิ่มขนาด Storage ได้ภายหลังจากสร้าง Database Instance แล้ว ([ขั้นตอนการเพิ่มขนาด Storage](https://docs-epc.gitbook.io/ncs-documents/database-as-a-service/sql-database/manage-sql-database-instance/online-extend-storage-size)) หลังจากนั้นกดปุ่ม Next หรือกดที่ tab Network เพื่อไปขั้นตอนถัดไป

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2Fm11dfFmyK2pj4GHwCG8i%2Fimage.png?alt=media&#x26;token=8e6b30f2-f5f4-40bb-9af1-8c6b35f9ef81" alt=""><figcaption><p>กำหนดขนาดของ Storage</p></figcaption></figure>

{% hint style="info" %}
แนะนำให้กำหนดขนาดของ Database Storage เท่ากับหรือมากกว่า Database Instance เดิม เพื่อการใช้งานที่ต่อเนื่องและลดการเกิดปัญหา
{% endhint %}

### 7. เลือก Internal Network และ External Network <a href="#id-7.-internal-network-external-network" id="id-7.-internal-network-external-network"></a>

เลือก VPC Network สำหรับสร้าง Internal IP ของ Database Instance โดย Internal IP จะต้องสร้างใหม่เท่านั้น สามารถเลือก IP Address เอง หรือให้ระบบเลือกให้ก็ได้เช่นกัน (VPC Network ต้องตั้งค่าให้ใช้งาน Security Group, DHCP และ RPF ถึงจะสามารถสร้าง Database Instance ไว้ที่ Network นั้นได้)

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FcLIVZZTZ75USolvQqRwI%2Fimage.png?alt=media&#x26;token=3dbcb86c-d679-4ce0-aca5-2c3021cded9c" alt=""><figcaption><p>เลือก Internal Network</p></figcaption></figure>

Database Instance บังคับการใช้งาน External IP สำหรับการออกสู่ Internet เพื่อทำการติดตั้งและเข้าถึงเพื่อใช้งาน Database โดยไม่สามารถเลือก IP Address เองได้ (External IP สำหรับการใช้งาน Database Instance จะไม่แสดงที่หน้า External IP List และถูกคิดเงินรวมกับ Database Instance แล้ว) หลังจากนั้นกดปุ่ม Next หรือกดที่ tab Security เพื่อไปขั้นตอนถัดไป

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FzsgCNodV70OUSBKjqfZL%2Fimage.png?alt=media&#x26;token=7be229d3-fa76-4d42-b706-a4bdbdf3ee4e" alt=""><figcaption><p>เลือก External Network</p></figcaption></figure>

### 8. กำหนด CIDR <a href="#id-8.-cidr" id="id-8.-cidr"></a>

กำหนด Firewall ขั้นพื้นฐานด้วย CIDR สำหรับการเข้าถึง Database Instance ซึ่งสามารถกำหนดเป็น 0.0.0.0/0 เพื่อเข้าถึงได้อย่างอิสระ แต่ควรกำหนดค่าที่เหมาะสมเพื่อความปลอดภัยของ Database Instance โดยกำหนดได้สูงสุด 10 CIDR และสามารถแก้ไขได้ภายหลังจากสร้าง Database Instance แล้ว ([ขั้นตอนการแก้ไข CIDR](https://docs-epc.gitbook.io/ncs-documents/database-as-a-service/sql-database/manage-sql-database-instance/edit-allowed-cidr))

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FcuzvXEiPhJA4vfdC15Vj%2Fimage.png?alt=media&#x26;token=24b1ce39-7de6-4db5-a9a0-e6471934ecd9" alt=""><figcaption><p>กำหนด CIDR</p></figcaption></figure>

### 9. ตรวจสอบการตั้งค่าของ Database Instance

ตรวจสอบการตั้งค่าทั้งหมดของการสร้าง SQL Database Instance จาก Backup และสามารถย้อนกลับไปแก้ไขได้ หากพบข้อมูลที่ไม่ถูกต้อง

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FQZUVcAe2XQXZ6Zq63jX4%2Fimage.png?alt=media&#x26;token=82c0f5df-cc56-49ad-8236-a98dee01977b" alt=""><figcaption><p>ตรวจสอบการตั้งค่าของ Database Instance</p></figcaption></figure>

เมื่อตรวจสอบการตั้งค่าแล้ว ให้กดปุ่ม “CREATE” เพื่อเริ่มต้นการสร้าง Database Instance โดยที่ tab Summary นี้ จะไม่สามารถเข้ามาได้ หากขั้นตอนก่อนหน้ายังกรอกข้อมูลไม่สำเร็จ

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FaJFRymhudOtipSTGMSMr%2Fimage.png?alt=media&#x26;token=d6f54965-555a-47cd-bc91-8b1b862f035e" alt=""><figcaption><p>กดปุ่ม "CREATE" เพื่อสั่งสร้าง</p></figcaption></figure>

### 10. Database Service Status เป็น Healthy และ Database Instance Status เป็น Active หลังจากทำคำสั่งสำเร็จ

หลังสั่งสร้าง Database Instance ระบบจะแสดงรายการ Database Instance ที่กำลังสร้าง

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2F8s87bFEP4UY8r84ivZ54%2Fimage.png?alt=media&#x26;token=e6b11e1d-2bb6-4765-820a-9abd6fec8220" alt=""><figcaption><p>แสดงรายการ Database Instance หลังสั่งสร้าง</p></figcaption></figure>

ให้รอจนกว่า Database Service Status เป็น Healthy และ Database Instance Status เป็น Active แสดงว่าคำสั่งสำเร็จ

<figure><img src="https://1352697161-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2Fq2BYmWTMiaonrEL8QBP2%2Fuploads%2FIqAFpeu8mgdbjfD5jFFA%2Fimage.png?alt=media&#x26;token=8a54a089-8668-4853-85e5-d46780f908d9" alt=""><figcaption><p>Database Instance ได้ถูกสั่งสร้างสำเร็จ</p></figcaption></figure>
