การสร้าง Microsoft SQL Server 2019 Standard ใน Windows Server 2019 บน EC2

SQL Server บน AWS มี TCO ที่ต่ำกว่า และมีประสิทธิภาพที่สูงขึ้น รวมไปถึงความสามารถที่มากมาย ซึ่ง Amazon Machine Image (AMI) ของ SQL Server นี้สร้างโดย Amazon Web Services (AWS) เพื่อใช้งานบน Amazon EC2 อีกทั้งยังเป็นที่ได้รับการพิสูจน์แล้ว เชื่อถือได้ และปลอดภัยสำหรับ SQL Server

ครั้งนี้ ผมจะมาอธิบายเกี่ยวกับการสร้าง Microsoft Windows Server 2019 with SQL Server 2019 Standard ในบทความนี้

การสร้าง Key Pairs

ค้นหา🔍︎ EC2» เลือกEC2
Search-EC2

คลิกKey Pairs
KP-1

คลิกCreate key pair
KP-2

ในส่วนของ Key Pairs ให้ตั้งชื่อตามนี้
» ใส่ชื่อที่ต้องการในช่อง Name เช่นtinnakorn-win-sqlserver
» เลือก.pem
» คลิกCreate key pair
KP-win-sqlserver-1

หลังจากสร้าง Key Pair เสร็จแล้ว ไฟล์.pemจะถูกดาวน์โหลดมาที่คอมพิวเตอร์และชื่อไฟล์จะเปลี่ยนไปตามที่เราได้ตั้งชื่อไว้โดยอัตโนมัติ
KP-win-sqlserver-2

การสร้าง Microsoft Windows Server 2019 with SQL Server 2019 Standard

ค้นหา🔍︎ EC2» เลือกEC2
Search-EC2

คลิกInstances
Instance-select

คลิกLaunch instances
Ins-win-1

Step 1: Choose an Amazon Machine Image (AMI) คือ Instance จะมีเซิร์ฟเวอร์ให้เลือกใช้มากมาย เช่น macOS, Red Hat, SUSE Linux, Ubuntu, Microsoft Windows, Debian เป็นต้น ซึ่งในบทความนี้จะใช้ Microsoft Windows Server 2019 with SQL Server 2019 Standard ในการติดตั้ง

» ค้นหาชื่อ🔍︎ Microsoft Windows Server 2019 with SQL Server 2019 Standard+ Enter
» คลิกSelect
C-I-WSQL-1

Step 2: Choose an Instance Type คือ เราสามารถเลือก Type CPU Memory ที่จะนำไปใช้งานได้ตามความต้องการ ไม่ว่าเว็บไซต์จะมีขนาดเล็กหรือขนาดใหญ่ ก็สามารถเลือกขนาดความจุของ CPU Memory ได้ตามความเหมาะสม แต่ครั้งนี้เป็นการใช้งาน SQL Server 2019 Standard ต้องใช้ทรัพยากรสูง เพราะว่าตัว Server มีขนาดใหญ่ จึงไม่สามารถเลือกทรัพยากรที่ต่ำได้

» เลือก Family =>t3a| Type =>t3a.xlarge| vCPUs =>4| Memory =>16(สามารถเลือกใช้งานได้ตามความต้องการ)
» คลิกNext: Configure Instance Details
C-I-WSQL-2

Step 3: Configure Instance Details » คลิกNext: Add Storage
C-I-WSQL-3

Step 4: Add Storage คือ เราสามารถเพิ่ม Storage ในส่วนของ Size (GiB) ได้ โดยค่าเริ่มต้นจะเป็น 65 GiB

» คลิกNext: Add Tags
C-I-WSQL-4

Step 5: Add Tags » คลิกAdd Tag
C-I-WSQL-5

เพิ่มแท็กตามนี้
» Key:Name
» Value:tinnakorn-win-sqlserver
» คลิกNext: Configure Security Group
C-I-WSQL-5-1

Step 6: Configure Security Group คือ การตั้งค่า My IP เพื่อจำกัดการเชื่อมต่อ RDP จากทุกตำแหน่ง ซึ่งในส่วนนี้จะทำให้สามารถเชื่อมต่อ RDP จาก My IP (ที่อยู่ IP ปัจจุบันของคุณ) ได้เท่านั้น

» เปลี่ยนชื่อ Security group name เพื่อไม่ให้สับสนกับผู้ใช้ของคนอื่น เช่นtinnakorn-win-sqlserver(ค่าเริ่มต้นจะเป็นชื่อlaunch-wizard-1)
» คลิก✕ กากบาทเพื่อลบ Type: MS SQL ออก C-I-WSQL-6

» เลือก Source:My IP
» คลิกReview and Launch
C-I-WSQL-6-1

Step 7: Review Instance Launch » คลิกLaunch
C-I-WSQL-7

ในส่วนของ POPUP ให้ทำตามขั้นตอนด้านล่าง
» Select a key pair:tinnakorn-win-sqlserver | RSA(ให้เลือก key pair ที่สร้างไว้ตอนแรก key pair)
» คลิก Checkbox
» คลิกLaunch Instances
C-I-WSQL-7-KP

ถ้ามีข้อความแจ้งเตือนสีเขียวเหมือนรูปภาพด้านล่างนี้ เท่ากับว่าการสร้าง Instance เสร็จสิ้น จากนั้นให้คลิกView Instances
C-I-WSQL-8

หลังจากสร้าง Instance เสร็จแล้ว ให้สังเกตคำว่า Status Checks จะเห็นว่ามีสถานะเป็น🕘 Initializingคือ Instance กำลังทำการสตาร์ทระบบขึ้นมานั่นเอง
C-I-WSQL-9-SC

ถ้าเริ่มต้นระบบเสร็จแล้วจะเป็นเหมือนรูปภาพนี้
C-I-WSQL-9-SC-1

การเชื่อมต่อกับ Instance เพื่อเข้าใช้งาน Windows ผ่านไฟล์ RDP

คลิกInstance IDของเรา
C-I-WSQL-9

คลิกConnect
C-I-WSQL-10

ในส่วนของ Connect to instance จะเป็นการ Download remote desktop file และ Get password
» เลือกหัวข้อRDP client
» คลิกDownload remote desktop fileแล้วตัวไฟล์จะถูกดาวน์โหลดมาที่คอมพิวเตอร์และเป็นชื่อตาม Instance ของเราโดยอัตโนมัติ
» คลิกGet password
C-I-WSQL-11

ในส่วนของ Get Windows password ต้องรอประมาณ 5 นาทีจนกว่าการเริ่มต้นระบบของ Windows จะเสร็จสมบูรณ์ จึงจะสามารถทำขั้นตอนถัดไปได้ C-I-WSQL-11-1

คลิกBrowse(เป็นการเพิ่มไฟล์.pemเข้ามายัง Instance เพื่อ Generate Password ขึ้นมา)
C-I-WSQL-12

มาที่ไฟล์.pemที่ได้มาจากการสร้าง key pair (ของผมจะเป็นชื่อtinnakorn-win-sqlserver.pem) จากนั้นคลิกOpen
C-I-WSQL-13

คลิกDecrypt Password
C-I-WSQL-14

จะเห็นว่ามี Password ขึ้นมาแล้ว
C-I-WSQL-15

กลับมาที่ไฟล์.rdpที่ดาวน์โหลดมาจาก Instance ของเรา (ของผมจะเป็นชื่อtinnakorn-win-sqlserver.rdp) จากนั้นดับเบิ้ลคลิกที่ไฟล์ได้เลย
C-I-WSQL-16

คลิกConnect
C-I-WSQL-17

ในส่วนนี้เราต้องใส่ Password ที่ Generate ใน Instance เมื่อสักครู่นี้
C-I-WSQL-18

กลับมาที่ Instance ของเรา จากนั้น Copy Password ตามรูปได้เลย
C-I-WSQL-19

วาง Password ในช่อง Administrator เพื่อ Login เข้ามาใน Windows Server
C-I-WSQL-20

คลิกYes
C-I-WSQL-21

เมื่อทำการ Login เข้ามาแล้ว ก็จะมีหน้าตาเป็น Windows Server 2019 เหมือนกับรูปด้านล่าง
C-I-WSQL-22

การตั้งค่าพื้นฐาน SQL Server ใน Windows Server 2019

เปิดโปรแกรม SQL Server ตามนี้
» คลิกปุ่มWindows
» คลิกที่โฟลเดอร์Microsoft SQL Server Tools 18
» คลิกที่โปรแกรมMicrosoft SQL Server Management...
ST-WSQL-1-fix

ก่อนที่จะเข้าหน้าโปรแกรม SQL Server Management Studio ต้องรอสักครู่
ST-WSQL-2

คลิกConnect
ST-WSQL-3

มาที่เมนูด้านซ้าย คลิกขวาที่EC2AMAZ-N1S5S42 แล้วเลือกProperties
ในส่วนของEC2AMAZ-N1S5S42นั้นจะเปลี่ยนแปลงไปทุกครั้งที่ทำการเริ่มต้นระบบ SQL Server ซึ่งจะคล้ายกับ ID Instance
ST-WSQL-4

ตั้งค่า Server Properties ตามนี้
» เลือกSecurity
» เลือกSQL Server and Windows Authentication mode
» คลิกOK
ST-WSQL-5

ข้อความ POPUP นี้บอกว่าการตั้งค่าจะไม่แสดงผลจนกว่าจะ Restart SQL Server » คลิกOK
ST-WSQL-5-1

คลิก✕ กากบาทเพื่อออกจากโปรแกรม
ST-WSQL-6

Restart SQL Server

เราจะ Restart SQL Server เพื่อเริ่มต้นการใช้งาน SQL Server and Windows Authentication mode ถ้าพร้อมแล้วเริ่มทำขั้นตอนถัดไปได้เลย

» คลิกปุ่มWindows
» คลิกปุ่มSettings
ST-WSQL-7

ค้นหาชื่อ Services โดยใส่คำว่าView local servicesจากนั้นคลิกเข้าไปได้เลย
ST-WSQL-8

ค้นหาชื่อSQL Server (MSSQLSERVER)ตามด้วยคลิกขวาที่ชื่อ และเลือกRestart
ST-WSQL-9

คลิกYes
ST-WSQL-10

เข้าไปยังโปรแกรม SQL Server อีกครั้ง
» คลิกปุ่มWindows
» คลิกที่โฟลเดอร์Microsoft SQL Server Tools 18
» คลิกที่โปรแกรมMicrosoft SQL Server Management...
ST-WSQL-1-fix

คลิกConnect
ST-WSQL-11

เข้ามาตรวจสอบการตั้งค่า Security อีกครั้ง
มาที่เมนูด้านซ้าย คลิกขวาที่EC2AMAZ-N1S5S42 แล้วเลือกProperties
ST-WSQL-4

» เลือกSecurity
» ดูที่ Server authentication จะเห็นว่าเป็นSQL Server and Windows Authentication modeแล้ว
» คลิกCancel
ST-WSQL-12

ตั้งค่าการ Login SQL Server

เราจะมาตั้งค่าการ Login SQL Server ใน Username ที่ชื่อว่าsaที่เป็น Administrator User ที่ใช้สำหรับ SQL Server ซึ่งเป็นระบบที่มีความปลอดภัยสูง ดังนั้นจำเป็นต้องให้ความสำคัญกับการตั้งค่าการใช้งาน ถ้าพร้อมแล้วเริ่มทำขั้นตอนถัดไปได้เลย

» คลิก+ Security
» คลิก+ Logins
» คลิกขวาที่sa
» เลือกProperties
ST-WSQL-13-fix

ตั้งค่าในส่วนของ Login Properties - sa ตามนี้
» คลิกGeneral
» Password:P@ssW0rd(ใส่ Password ของคุณ)
» Confirm password:P@ssW0rd(ใส่ Password ของคุณ)
ST-WSQL-14

» เลือกStatus
» เลือก Login: ให้เป็นEnabled
» คลิกOK
ST-WSQL-15

ทดสอบการใช้งาน SQL Server ด้วย Terminal CMD

เราจะมาทดสอบการใช้งาน SQL Server ด้วย Terminal CMD โดยการ Login เข้าไปใน SQL Server ตามด้วยสร้าง Database กับ Table และ Show Database ที่สร้างขึ้นมา ถ้าพร้อมแล้วเริ่มทำในขั้นตอนถัดไปได้เลย

การสร้าง Database ใน SQL Server Login

คลิกที่ icon🔍︎ ค้นหาตามด้วยพิมพ์🔍︎ cmdและคลิกที่Command Prompt
Test-WSQL-1

Login เข้าไปยัง SQL Server ด้วยคำสั่งนี้

# "P@ssW0rd" คือ Password ที่เปลี่ยนตอนตั้งค่าการ Login SQL Server
sqlcmd -S localhost -U sa -P P@ssW0rd

Test-WSQL-2

สร้าง Database ด้วยคำสั่งนี้

# "tinnakorn_win_sqlserver" คือชื่อสมมุติที่ใช้สร้าง Database
create database tinnakorn_win_sqlserver;

# การใช้คำสั่งใน SQL Server ต้องพิมพ์คำสั่ง "go" ปิดท้ายทุกครั้ง คำสั่งจึงจะใช้งานได้
go

Test-WSQL-3-fix-1

ทดสอบการจัดการ SQL Server

เข้าไปยัง Database ที่สร้างเมื่อสักครู่นี้ด้วยคำสั่งนี้

use tinnakorn_win_sqlserver;
go

Test-WSQL-4-fix-1

จะเห็นว่ามี Database ที่ชื่อว่าtinnakorn_win_sqlserverถูกสร้างขึ้นมาแล้ว
Test-WSQL-4-1

สร้าง Table ด้วยคำสั่งนี้โดยใช้ชื่อ "test"

create table test (id int, string varchar(255));
go

Test-WSQL-5

ใส่ข้อมูลลงใน Table ด้วยคำสั่งนี้

insert into test values (1, 'test');
go

Test-WSQL-6

เรียกดูข้อมูลที่ใส่ไปด้วยคำสั่งนี้

select * from test;
go

Test-WSQL-7

ออกจาก SQL Server Login ด้วยคำสั่งนี้

exit

Test-WSQL-8

ตรวจสอบการจัดการ SQL Server

ตรวจสอบข้อมูลใน Results ที่เพิ่มเข้าไปตามนี้
» คลิก+ Databases
» คลิก+ tinnakorn_win_sqlserver
» คลิก+ Tables
» เลือกdbo.test
» เลือกSelect Top 1000 Rows
Test-WSQL-9

จะเห็นว่าข้อมูลที่ใส่เข้ามา ก็สามารถตรวจสอบที่ Results นี้ได้เหมือนกัน
Test-WSQL-10

หลังจากใช้งานเสร็จแล้ว ก็ปิดเครื่องตามนี้ได้เลย (หลังจาก Shut down ไปแล้ว Instance ของเรา จะเป็นสถานะ Stopped โดยอัตโนมัติ)
» คลิกปุ่มWindows
» เลือกShut down
Test-WSQL-11

คลิกContinue
Test-WSQL-12

สรุป

Amazon EC2 ที่รัน Microsoft Windows Server เป็นสภาพแวดล้อมที่รวดเร็วและเชื่อถือได้สำหรับการปรับใช้แอปพลิเคชันโดยใช้ Microsoft Web Platform Amazon EC2 ช่วยให้คุณสามารถเรียกใช้โซลูชันที่ใช้ Windows ที่เข้ากันได้บนแพลตฟอร์มการประมวลผลบนระบบคลาวด์ที่มีประสิทธิภาพสูง เชื่อถือได้ คุ้มค่าต่อการใช้งานด้วย AWS

บทความที่เกี่ยวข้อง

ดูรายละเอียดเพิ่มเติมได้ที่นี่ สอบถามเพิ่มเติมเกี่ยวกับ AWS คลิกที่นี่