موجیم، که آرامش ما عدم ماست (مهاجرت به لینوکس)(04)(SQL Server)
در قسمت های قبل ما تونستیم پیش نیازهای برنامه نویسی رو نصب و کانفیگ کنیم. حالا نوبت اجرا کردن پروژه هستش
برای اجرا برنامه هم نیاز به دیتابیس هست، بعد از نصب نوبت وصل شدن به دیتابیس بودش و من برای انجام این کار از نرم افزار DataGrip برای مدیریت دیتابیس ها استفاده کردم
اولین مشکلی که داشتم این بود که بر عکس ویندوز نمیشد بدون یوزر و پسورد به دیتابیس متصل شد و حتما باید اینها وارد میشدن
در قسمت قبل با دیتابیس رو کانفیگ کردیم و پسورد هم براش تعیین کردیم، اما مشکل این بود که یوزر معلوم نبود 😀
با کمی جستجو به لینک زیر برای استفاده در SQL Server در ترمینال رسیدم:
https://docs.microsoft.com/en-us/sql/linux/quickstart-install-connect-ubuntu?view=sql-server-ver15
با استفاده از دستور زیر به دیتابیس متصل شدم:
sqlcmd -S localhost -U SA -P '<YourPassword>'
و بعد با دستوری که تو عکس زیر مشخص هست، لیست تمام یوزرهای دیتابیس رو بدست آوردن. نکته مهمی که هست حتما باید بعد از دستور GO رو بنویسید تا اجرا بشه
همون اولین یوزر که SA هست رو امتحان کردم که با موفقیت وصل شد. البته اگه دستور بالا برای اتصال به دیتابیس رو نگاه کنید توش SA رو میبینید که اون موقع من دقت نکردم 😁
برای اتصال هم اطلاعات رو در قسمت appsetting برنامه وارد کردم و برنامه هم با موفقیت میخواست اجرا بشه که نشد. 🤔
برای اجرا قبلش باید دیتابیس مورد نظر رو میساختم، برنامه ای که داشتم Code First بود و برای اعمال تغییرات در دیتابیس کافی بود Migration ها رو اعمال کنم
برای این کار باید ابزار dotnet ef رو نصب میکردم. پس طبق داکیومنتی که داشت شروع به جلو رفتن کردم
https://docs.microsoft.com/en-us/ef/core/cli/dotnet
اینجا بود که مشکل بعدی بوجود اومد، بعد از جستجوی های بسیار متوجه شدم که ظاهرا PATH اون .Net Core شناخته نمیشه
پس برای حلش اون دستوراتی که در قسمت سوم این مجموعه آموزش ها به فایل bashrc گفته بودم رو اضافه کردم. اون متغیر DOTNET_ROOT هم اضافه کردم
بعد از این کار ترمینال رو در محلی که میگریشن ها بودن باز کردم و با دستور زیر دیتابیس رو ایجاد کردم
dotnet ef database update
بعد از کارهای بالا مشکلات برنامه نویسی حل شدن و شروع کردم با سیستم عامل کار کردن. البته اینجا هم بدون مشکل نبود که در قسمت بعد بهش میپردازیم