การติดตั้ง Microsoft SQL Server 2022 บน Ubuntu 22.04 โดยใช้ Docker

Published on February 13, 2023
การติดตั้ง Microsoft SQL Server 2022 บน Ubuntu 22.04 โดยใช้ Docker

การติดตั้ง Microsoft SQL Server 2022 บน Ubuntu 22.04 โดยใช้ Docker

 

ในปัจจุบัน (เวลาที่เขียนบทความนี้) Microsoft SQL Server 2022 นั้นยังไม่สนับสนุน Ubuntu 22.04 ได้โดยตรง แต่ในเมื่องเราต้องการใช้ SQL Server version ใหม่เราก็มีทางเลือกโดยการติดตั้งผ่าน Docker สำหรับ SQL Server 2022 นั้นมีฟีเจอร์ใหม่มากมาย ที่จะช่วยให้ทั้งการ query นั้นเร็วและมีประสิทธิภาพ รวมทั้งเครื่องมีหลายตัวที่จะทำให้การทำงานร่วมกับ Cloud นั้นง่ายขึ้น เช่น

 

– Parameter Sensitive Plan Optimization : หรือเครื่องมือการทำ caching ในการ execution plan ได้ดีขึ้นเพื่อความเร็วที่มากขึ้นในการ query
– Query Store enhancements : ที่จะ ถูก enable โดย default ใน version นี้
– Link to Azure SQL Managed Instance : ทำให้การทำ replicate ระหว่าง on-premise และ cloud เป็นเรื่องง่ายและการย้าย workload ขึ้นสู่ cloud นั้นทำได้ในพริบตา
– Azure Active Directory authentication : ก่อนหน้านี้เราจะเลือกการ authen ระหว่าง SQL Server เองหรือว่า on-premise AD เท่านั้นแต่ใน version นี้เราสามารถเลือกที่จะ authen กับ Azure AD ได้แล้ว ก็เรียกว่าเป็นอีกฟีเจอร์หนึ่งที่หลายๆ คนรอคอย

อันนี้ ก็เป็นแค่ฟีเจอร์ส่วนหนึ่งในอีกหลายต่อหลายฟีเจอร์ที่มาพร้อม SQL Server 2022 ซึ่งแน่นอนทำให้เราๆ อยากจะลองใช้ และต้องหาลงมาเพื่อให้ประสิทธิภาพของแอฟและการใช้งาน database เราดีขึ้น
งั้นเรามาเริ่มทำการติดตั้งกันเลย

 

การติดตั้ง Docker

1. ติดตั้ง Docker ไม่ว่าท่านจะใช้ Ubuntu 22.04 ที่เป็น Desktop หรือ Server Edition ท่านจะต้องทำการติดตั้ง Docker ก่อน โดยการพิมพ์คำสั่ง

 

sudo apt update
sudo apt install ca-certificates curl gnupg lsb-release

2 . ทำการเพิ่ม Docker GPG key ด้วยคำสั่ง

sudo mkdir -m 0755 -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg

 

3. ใช้คำสั่งดังต่อไปนี้เพื่อตั้งค่า repository

echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

4. หลังจากนั้นก็ติดตั้ง Docker ด้วยคำสั่ง

sudo apt update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

 

5. ทำการตรวจสอบว่า Docker ติดตั้งเรียบร้อยดีหรือไม่ ด้วยคำสั่ง

sudo docker run hello-world

หรือ

sudo service docker status

 

service docker status

รูปที่ 1 แสดง การทำงานของ docker ซึ่งสถานะคือทำงานอยู่ เมื่อใช้คำสั่ง sudo service docker status

 

การติดตั้ง Microsoft SQL Server 2022

1. เมื่อท่านทำการติดตั้ง Docker เรียบร้อยแล้ว ก็ถึงเวลาที่จะติดตั้ง Microsoft SQL Server 2022 โดยเราจะทำการดึง Docker image มาด้วยคำสั่งดังต่อไปนี้

 

sudo docker pull mcr.microsoft.com/mssql/server:2022-latest

docker pull

รูปที่ 2 แสดงการดึง image ms sql server 2022

 

2. ทำการพิมพ์คำสั่งต่อไปนี้เพื่อรัน SQL Server 2022

sudo docker run -e "ACCEPT_EULA=Y" -e "###YourPasswordHere###" -p 1433:1433 --name sql1 --hostname sql1 -d mcr.microsoft.com/mssql/server:2022-latest

*** แทนที่ <###YourPasswordHere###> ด้วยรหัสที่คุณต้องการจะตั้ง

3. ใช้คำสั่ง ดังต่อไปนี้เพื่อเช็คว่า docker นั้นทำงานอยู่หรือไม่

sudo docker ps -a

docker container

รูปที่ 3 แสดง container ซึ่งรันอยู่

 

4. เมื่อทำการติดตั้ง MS SQL Server 2022 เรียบร้อยแล้ว คราวนี้เราก็ลองทำการสร้าง database ซึ่งในทีนี้ เราจะใช้ Azure Data Studio ในการเชื่อมต่อไปหา SQL Server ของเรา ในขั้นแรกเราก็จะต้องทำการดาวน์โหลด Azure Data Studio มาก่อน โดยสามารถพิมพ์ Azure Data Studio ได้เลย หลังจากนั้นท่านก็คลิ้กที่ Link แรกที่ปรากฏใน google และเลื่อนลงมาเพื่อทำการคลิ้กดาวน์โหลด

 

Azure Data Studio

รูปที่ 4 แสดงไฟล์ที่จะต้องคลิ้กเพื่อดาวน์โหลด Azure Data Studio

 

5. หลังจากนั้น ให้ท่านเปิด folder ที่เก็บไฟล์ที่ท่านดาวน์โหลดมา และ ทำการคลิ้กขวา และ เลือก Open with other application

 

docker Open with other application

รูปที่ 5 Open with other application

 

6. เลือก software installer ดังภาพที่ 6 และทำการเลือก SELECT

 

software installer docker

รูปที่ 6 software installer docker

 

7. หลังจากนั้นระบบจะแสดงรูปที่ 7 ให้ท่านคลิ้กที่ Install

 

software installer docker

รูปที่ 7  software installer docker

 

8. ระบบจะทำการติดตั้งจนเสร็จสิ้น หลังจากนั้น Application Azure Data Studio ก็จะปรากฏ เมื่อท่านคลิ้กและค้นหา ดังภาพที่ 8

 

Application Azure Data Studio

ภาพที่ 8 Application Azure Data Studio

 

9. เมื่อท่านคลิ้กที่ icon เพื่อเปิดโปรแกรมจะได้ ดังภาพที่ 9

 

Welcome Azure Data Studio

รูปที่ 9 แสดงหน้าจอแรกของ Azure Data Studio

 

10. ให้ท่านคลิ้กที่ New และกรอกข้อมูล การเชื่อมต่อ ซึ่งท่านก็ใส่ Server เป็น localhost เพราะเราติดตั้งทั้ง database server และ Azure Data Studio ในเครื่องเดียวกัน และใส่รหัสที่ท่านตั้งไว้ก่อนหน้านี้ และทำการกด Connect

 

Azure Data Studio Connections

รูปที่ 10 แสดงหน้าจอ Azure Data Studio Connections

 

11. เมื่อทำการเชื่อมต่อได้สำเร็จ ท่านก็คลิ้กที่ Connections จากเมนูด้านซ้าย และ คลิ้กขวาที่ Server และเลือก New Query

 

Azure Data Studio New Query

รูปที่ 11 แสดงหน้าจอ Azure Data Studio New Query

 

12. หลังจากนั้น ท่านก็สามารถที่จะจัดการฐานข้อมูลได้ทันที ไม่ว่าจะเป็นการสร้าง database หรือ การจัดการเพิ่มลบข้อมูล ทำได้เลย

 

แล้วพบกับ บทความใหม่ๆ จาก AVESTA ได้ในอนาคต

AVESTA CO., LTD. ให้บริการเขียนซอฟต์แวร์ ติดตั้ง รับเป็นที่ปรึกษา รวมถึงระบบสำรองข้อมูล ด้วยประสบการณ์ยาวนานนับสิบปี

Migrate VMware virtual machines to Hyper-V in WAC

Windows Admin Center หรือ WAC นั้นเป็นเครื่องมือในการบริหาร Windows Server ที่เข้ามาแทน Microsoft...

Read more »

Understanding UUID

UUID นั้นต้องเรียกได้ว่ามีข้อถกเถียงกันมานานมา ในการใช้ในการเขียนโปรแกรมและการออกแบบดาต้าเบส วันนี้เราจะไปศึกษาว่ามันคืออะไร และ ในการออกแบบฐานข้อมูลมันเข้ามามีบทบาทอย่างไร UUID คืออะไร UUID ย่อมาจาก...

Read more »

วันสิ้นสุด License Perpetual ของ VMware มาถึงแล้ว รีบย้ายไป Proxmox VE กันเถอะ

ตอนที่ VMware ประกาศว่าจะออก ESXi 9 มานั้น ทุกคนในวงการก็คิดว่า มันน่าจะมาพร้อมการอัพเดทบางส่วนเหมือนทุกๆ ครั้งที่ผ่านมาเช่น การเพิ่มการสนับสนุนฮาร์ดแวร์...

Read more »

Garage ทางเลือกในการแทนที่ MinIO

MinIO นั้นเป็นซอฟต์แวร์ที่จะทำให้เราสามารถเก็บข้อมูลในลักษณะที่เป็น Object ได้ และ เรียกว่าเป็นตัวเลือกที่มีอยู่ไม่มากนักในท้องตลาดหากท่านต้องการจะสร้าง Object Storage Server เพื่อใช้ภายในองค์กร...

Read more »

Time Range Booking System

Time Range Booking คืออะไร และทำไมธุรกิจยุคใหม่จำเป็นต้องใช้ ในยุคที่ลูกค้าคาดหวัง ความรวดเร็วและความแม่นยำ มากขึ้น ระบบจองแบบเดิมที่เลือกแค่วันที่หรือรอบเวลา (slot...

Read more »

เพิ่มขีดความสามารถของ WordPress ด้วยการเชื่อมต่อ External API

WordPress คืออะไร WordPress คือระบบ CMS (Content Management System) แบบโอเพนซอร์ส ที่ใช้สำหรับสร้างเว็บไซต์โดยไม่จำเป็นต้องเขียนโค้ดเองเลย...

Read more »