در این بلاگ، مراحل ایجاد یک فایل Docker Compose برای اجرای SQL Server و SQLPad را بررسی خواهیم کرد. Docker Compose به ما امکان میدهد چندین سرویس را بهطور همزمان مدیریت و راهاندازی کنیم. ابتدا با SQL Server و SQLPad آشنا میشویم؛ SQL Server یک سیستم مدیریت پایگاه داده است و SQLPad به ما اجازه میدهد تا به راحتی SQL را اجرا کنیم و گزارشها را مشاهده کنیم.
سپس به نحوه اتصال این دو سرویس میپردازیم تا SQLPad بتواند به SQL Server متصل شود و دادهها را مدیریت کند. همچنین، دسترسی به SQLPad از طریق مرورگر وب را بررسی خواهیم کرد. در نهایت، با نصب و استفاده از pymssql در پایتون، به اجرای queryها در SQL Server خواهیم پرداخت.
پیش نیازها
قبل از شروع، مطمئن شوید که موارد زیر را روی سیستم خود نصب کرده اید:
- Docker
- Docker Compose
- پایتون (کتابخانه pymssql)
مرحله 1: یک فایل Docker Compose ایجاد کنید
یک فایل با نام docker-compose.yml ایجاد کنید و محتوای زیر را در آن قرار دهید:
version: '3.8'
services:
mssql:
image: mcr.microsoft.com/mssql/server:2022-latest
container_name: mssql
environment:
- ACCEPT_EULA=Y
- SA_PASSWORD=YourStrongPassword
ports:
- "1433:1433"
volumes:
- mssql_data:/var/opt/mssql
networks:
- sqlnetwork
sqlpad:
image: sqlpad/sqlpad:latest
container_name: sqlpad
ports:
- "3000:3000"
environment:
- SQLPAD_ADMIN=admin
- SQLPAD_ADMIN_PASSWORD=YourStrongPassword
depends_on:
- mssql
volumes:
- sqlpad_data:/var/lib/sqlpad
networks:
- sqlnetwork
networks:
sqlnetwork:
driver: bridge
SQL Server: این سرویس تصویر SQL Server را اجرا می کند، متغیرهای محیطی را برای پذیرش EULA و تنظیم رمز عبور SA تنظیم می کند و پورت 1433 را در معرض نمایش قرار می دهد.
SQLPad: سرویس SQLPad تصویر SQLPad را اجرا می کند، رمز عبور مدیریت را تنظیم می کند و پورت 3000 را در معرض نمایش قرار می دهد. همچنین به سرویس SQL Server بستگی دارد.
Networks: هر دو سرویس از طریق یک شبکه سفارشی متصل می شوند.
مرحله 2: راه اندازی سرویس ها
در ترمینال، دستور زیر را برای شروع هر دو سرویس اجرا کنید:
docker-compose up
مرحله 3: به SQLPad در مرورگر خود بروید
پس از راهاندازی سرویسها، مرورگر خود را باز کرده و به آدرس زیر بروید:
http://localhost:3000
شما باید صفحه ورود به سیستم SQLPad را ببینید. با استفاده از نام کاربری و رمز عبور وارد شوید:
نام کاربری: admin
رمز عبور: YourStrongPassword
مرحله 4: SQLPad را به SQL Server متصل کنید
پس از ورود به سیستم، روی "Settings" در نوار کناری کلیک کنید.
به "Connections" بروید و روی "New Connection" کلیک کنید.
یک connection حدید بسازید و روی "ذخیره" کلیک کنید.
اکنون، می توانید کوئری های خود را در SQLPad در پایگاه داده SQL Server خود اجرا کنید!
مرحله 5: pymssql را نصب کنید
برای اتصال به SQL Server از پایتون، باید pymssql را نصب کنید. دستور زیر را اجرا کنید:
pip install pymssql
مرحله 6: نمونه کد پایتون برای اتصال و اجرای کوئری ها
در اینجا یک نمونه اسکریپت پایتون برای اتصال به SQL Server و اجرای کوئری ها آمده است:
import pymssql
conn = pymssql.connect(server='localhost', port='1433', user='sa', password='Mynewdb123!', database='master')
try:
cursor = conn.cursor()
cursor.execute(""" CREATE TABLE IF NOT EXISTS test_table (id INT PRIMARY KEY, name VARCHAR(50)) """)
cursor.execute("INSERT INTO test_table (id, name) VALUES (1, 'Alice')")
conn.commit()
for row in cursor.execute("SELECT * FROM test_table"):
print(row)
except Exception as e:
print(f"Error: {e}")
finally:
conn.close()
print("Connection closed")
راهاندازی MSSQL و SQLPad و اجرای Query با پایتون