توزيع Azure SQL Edge

هام

لم يعد Azure SQL Edge يدعم النظام الأساسي ARM64.

Azure SQL Edge هو محرك قاعدة بيانات ارتباطية محسن لتوزيعات IoT وAzure IoT Edge. يوفر القدرات اللازمة لإنشاء طبقة تخزين ومعالجة بيانات عالية الأداء لتطبيقات وحلول IoT. يوضح لك هذا التشغيل السريع كيفية البدء في إنشاء وحدة Azure SQL Edge من خلال Azure IoT Edge باستخدام مدخل Microsoft Azure.

قبل البدء

إشعار

لنشر Azure Linux VM كجهاز IoT Edge، راجع دليل التشغيل السريع هذا.

نشر وحدة SQL Edge النمطية من Azure Marketplace

Azure Marketplace هو سوق خدمات وتطبيقات عبر الإنترنت حيث يمكنك الاستعراض عبر مجموعة واسعة من تطبيقات المؤسسة والحلول المعتمدة والمحسنة للتشغيل على Azure، بما في ذلك وحدات IoT Edge. يمكن نشر Azure SQL Edge على جهاز حافة من خلال السوق.

  1. ابحث عن الوحدة النمطية Azure SQL Edge في Azure Marketplace.

    Screenshot of SQL Edge in the Azure Marketplace.

  2. اختر خطة البرنامج التي تتطابق مع متطلباتك على أفضل نحو وحدد إنشاء.

    Screenshot showing how to pick the correct software plan.

  3. في صفحة Target Devices for IoT Edge Module، حدد التفاصيل التالية ثم حدد Create.

    الحقل ‏‏الوصف
    الاشتراك اشتراك Azure الذي تم إنشاء IoT Hub بموجبه
    مركز IoT اسم مركز IoT حيث تم تسجيل جهاز IoT Edge ثم حدد الخيار "نشر إلى جهاز"
    اسم جهاز IoT Edge اسم جهاز IoT Edge حيث سيتم نشر SQL Edge
  4. في صفحة تعيين الوحدات النمطية على الجهاز: حدد الوحدة النمطية Azure SQL Edge ضمن وحدات IoT Edge النمطية. يتم تعيين اسم الوحدة النمطية الافتراضي إلى AzureSQLEdge.

  5. في قسم الوحدة الإعدادات في جزء تحديث وحدة IoT Edge، حدد القيم المطلوبة لاسم وحدة IoT Edge النمطية ونهج إعادة التشغيل والحالة المطلوبة.

    هام

    لا تقم بتغيير إعدادات Image URI أو تحديثها على الوحدة النمطية.

  6. في قسم Environment Variables في جزء Update IoT Edge Module ، حدد القيم المطلوبة لمتغيرات البيئة. للحصول على قائمة كاملة بمتغيرات بيئة Azure SQL Edge، راجع تكوين باستخدام متغيرات البيئة. يتم تعريف متغيرات البيئة الافتراضية التالية للوحدة النمطية.

    المعلمة ‏‏الوصف‬
    MSSQL_SA_PASSWORD قم بتغيير القيمة الافتراضية لتحديد كلمة مرور قوية لحساب مسؤول SQL Edge.
    MSSQL_LCID قم بتغيير القيمة الافتراضية لتعيين معرف اللغة المطلوب لاستخدامه في SQL Edge. على سبيل المثال، 1036 هو الفرنسية.
    MSSQL_COLLATION قم بتغيير القيمة الافتراضية لتعيين الترتيب الافتراضي ل SQL Edge. يتجاوز هذا الإعداد التعيين الافتراضي لمعرف اللغة (LCID) إلى الترتيب.

    هام

    لا تقم بتغيير أو تحديث ACCEPT_EULA متغير البيئة للوحدة النمطية.

  7. في قسم Container Create Options في جزء Update IoT Edge Module ، قم بتحديث الخيارات التالية وفقا للمتطلبات.

    • منفذ المضيف

      تعيين منفذ المضيف المحدد إلى المنفذ 1433 (منفذ SQL الافتراضي) في الحاوية.

    • الربط والتركيب

      إذا كنت بحاجة إلى نشر أكثر من وحدة SQL Edge واحدة، فتأكد من تحديث خيار التحميلات لإنشاء زوج مصدر وهدف جديد لوحدة التخزين الثابتة. لمزيد من المعلومات حول عمليات التحميل ومستوى الصوت، راجع استخدام وحدات التخزين في وثائق Docker.

    {
        "HostConfig": {
            "CapAdd": [
                "SYS_PTRACE"
            ],
            "Binds": [
                "sqlvolume:/sqlvolume"
            ],
            "PortBindings": {
                "1433/tcp": [
                    {
                        "HostPort": "1433"
                    }
                ]
            },
            "Mounts": [
                {
                    "Type": "volume",
                    "Source": "sqlvolume",
                    "Target": "/var/opt/mssql"
                }
            ]
        },
        "Env": [
            "MSSQL_AGENT_ENABLED=TRUE",
            "ClientTransportType=AMQP_TCP_Only",
            "PlanId=asde-developer-on-iot-edge"
        ]
    }
    

    هام

    لا تقم بتغيير PlanId متغير البيئة المحدد في إعداد إنشاء التكوين. إذا تم تغيير هذه القيمة، ستفشل حاوية Azure SQL Edge في البدء.

    التحذير

    إذا قمت بإعادة تثبيت الوحدة النمطية، فتذكر إزالة أي روابط موجودة أولا، وإلا فلن يتم تحديث متغيرات البيئة الخاصة بك.

  8. في جزء Update IoT Edge Module ، حدد Update.

  9. في صفحة تعيين الوحدات النمطية على الجهاز ، حدد التالي: المسارات > إذا كنت بحاجة إلى تحديد مسارات للتوزيع الخاص بك. وإلا حدد Review + Create. لمزيد من المعلومات حول تكوين المسارات، راجع نشر الوحدات النمطية وإنشاء المسارات في IoT Edge.

  10. في صفحة تعيين الوحدات النمطية على الجهاز ، حدد إنشاء.

الاتصال بـ Azure SQL Edge

تستخدم الخطوات التالية أداة سطر أوامر Azure SQL Edgesqlcmd، داخل الحاوية للاتصال بـ Azure SQL Edge.

إشعار

لا تتوفر أدوات سطر أوامر SQL Server، بما في ذلك sqlcmd، داخل إصدار ARM64 من حاويات Azure SQL Edge.

  1. استخدم docker exec -it الأمر لبدء الاستخدام التفاعلي داخل الحاوية قيد التشغيل. في المثال التالي، AzureSQLEdge هو الاسم المحدد بواسطة معلمة Name وحدة IoT Edge.

    sudo docker exec -it AzureSQLEdge "bash"
    
  2. بمجرد الدخول إلى الحاوية، اتصل محليا باستخدام أداة sqlcmd . sqlcmd ليس في المسار بشكل افتراضي، لذلك يجب عليك تحديد المسار الكامل.

    /opt/mssql-tools/bin/sqlcmd -S localhost -U SA -P "<YourNewStrong@Passw0rd>"
    

    تلميح

    يمكنك حذف كلمة المرور على سطر الأوامر لتتم المطالبة بإدخالها.

  3. في حال نجاحك، يتعين الحصول على موجه أوامرsqlcmd:1>.

إنشاء بيانات استعلامية

ترشدك الأقسام التالية باستخدام sqlcmd وTransact-SQL لإنشاء قاعدة بيانات جديدة وإضافة بيانات وتشغيل استعلام.

إنشاء مصدر بيانات جديد

تنشئ الخطوات التالية قاعدة بيانات جديدة باسم جديد TestDB.

  1. من موجه الأوامر sqlcmd، الصق الأمر Transact-SQL التالي لإنشاء قاعدة بيانات مبدئية:

    CREATE DATABASE TestDB;
    GO
    
  2. في السطر التالي، اكتب استعلاماً لإرجاع الاسم ذاته لجميع قواعد البيانات على خادمك:

    SELECT name from sys.databases;
    GO
    

إدراج بيانات

بعد ذلك، أنشئ جدولا جديدا يسمى Inventory، وأدرج صفين جديدين.

  1. من موجه الأوامر sqlcmd بدل السياق إلى TestDB قاعدة البيانات الجديدة:

    USE TestDB;
    
  2. إنشاء جدول جديد اسمه Inventory :

    CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT)
    
  3. إدراج البيانات في الجدول الجديد:

    INSERT INTO Inventory
    VALUES (1, 'banana', 150);
    
    INSERT INTO Inventory
    VALUES (2, 'orange', 154);
    
  4. اكتب GO لتنفيذ الأوامر السابقة:

    GO
    

اختيار البيانات

الآن، قم بتشغيل استعلام لإرجاع البيانات من Inventory الجدول.

  1. من موجه الأوامر sqlcmd، أدخل استعلام بإرجاع صفوف من Inventory الجدول بحيث تكون كميته أكبر من 152:

    SELECT * FROM Inventory WHERE quantity > 152;
    
  2. تنفيذ الأمر:

    GO
    

إنهاء موجه الأوامر sqlcmd

  1. لإنهاء جلسة عمل sqlcmd، اكتب QUIT:

    QUIT
    
  2. لإنهاء موجه الأوامر التفاعلي في الحاوية، اكتب exit. يستمر تشغيل حاويتك حتى بعد الخروج من shell bash التفاعلية.

الاتصال من خارج الحاوية

يمكنك توصيل استعلامات SQL وتشغيلها مقابل مثيل Azure SQL Edge من أي أداة Linux أو Windows أو macOS خارجية تدعم اتصالات SQL. لمزيد من المعلومات حول الاتصال بحاوية SQL Edge من الخارج، راجع الاتصال والاستعلام عن Azure SQL Edge.

في هذا التشغيل السريع، قمت بنشر وحدة SQL Edge النمطية على جهاز IoT Edge.

الخطوات التالية