Skip to content
Gallery
บันทึกการทำ
Share
Explore
Systems

icon picker
ติดตั้ง MSSQL 2022 บน Debian 11

Last edited 158 days ago by System Writer
จากที่ลูกค้ามีฐานข้อมูล MS-SQL บน Windows Server และต้องเขียนโปรแกรมเสริมสนับสนุน การที่กำลังพัฒนาอะไรก็แล้วแต่ ก็ไม่ควรที่จะใช้ทดสอบกับฐานข้อมูลจริง กรอปกับเป็นคนใช้ Opensource เป็นพื้นฐาน เพื่อลดค่าใช้จ่ายในเรื่องของ software license และได้รับรู้ว่า MSSQL นั้น รองรับ Linux จึงได้ลงมือติดตั้ง MS-SQL 2022 for Linux

ติดตั้ง MS-SQL for Linux

เริ่มต้นด้วยการติดตั้ง tools และ lib ก่อน ดังคำสั่งต่อไปนี้
sudo apt install gnupg2 apt-transport-https wget curl lsb-release \
ca-certificates software-properties-common libssl-dev
ทำการเพิ่ม source list ของ MS-SQL เราสามารถที่ใช้ package ของ Ubuntu Focal ได้
wget -q -O- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor | sudo tee /usr/share/keyrings/microsoft.gpg > /dev/null 2>&1

echo "deb [signed-by=/usr/share/keyrings/microsoft.gpg arch=amd64,armhf,arm64] https://packages.microsoft.com/ubuntu/20.04/mssql-server-2022 focal main" | sudo tee /etc/apt/sources.list.d/mssql-server-2022.list
จากนั้นทำการ update package source list และ ติดตั้ง mssql-server
sudo apt update
sudo apt install -y mssql-server
หากทำการติดตั้งและไม่พบ error ใดๆ จะมีข้อความแจ้งให้ทำการ configure ซึ่งจะเป็นเลือก edition ที่ต้องการ และตั้ง password สำหรับ sa
sudo /opt/mssql/bin/mssql-conf setup
หากต้องการใช้ sqlcmd ก็สามารถติดตั้งเพิ่มได้
sudo apt-get update
sudo apt-get install mssql-tools unixodbc-dev
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
source ~/.bashrc

การใช้งาน

หากต้องนำฐานข้อมูลจาก server อื่นมาใช้งาน สามารถที่จะนำ .mdf และ .ldf มาทำการ attach ได้ ด้วยคำสั่งด้านล่างนี้ โดยต้องใส่ต้องใส่ full path ของทั้ง .mdf และ .ldf ซึ่งปกติแล้วไฟล์ทั้งสองจะอยู่ที่ /var/opt/mssql/data
CREATE DATABASE <new_database_name> ON (FILENAME = '<mdf_file_path>'), (FILENAME = '<ldf_file_path>') FOR ATTACH;
GO
ในการย้ายไฟล์มาวางใน /var/opt/mssql/data อย่าลืมที่จะต้องตรวจสอบ file owner และ permission
sudo chown mssql:mssql <mdf_file>

-rw-r----- 1 mssql mssql 4.7M Jun 30 15:29 master.mdf
-rw-r----- 1 mssql mssql 2.0M Jun 30 15:48 mastlog.ldf

ปัญหา

หากเกิดปัญหาเกี่ยวกับ libldap ลอง download และติดตั้งตามนี้
wget http://ftp.de.debian.org/debian/pool/main/o/openldap/libldap-2.4-2_2.4.57+dfsg-3+deb11u1_amd64.deb
sudo dpkg -i libldap-2.4-2_2.4.57+dfsg-3+deb11u1_amd64.deb

อ้างอิง

Want to print your doc?
This is not the way.
Try clicking the ⋯ next to your doc name or using a keyboard shortcut (
CtrlP
) instead.