معرفی SQL Server
SQL مخفف عبارت Structured Query Language است که آنرا “زبان پرسوجوی ساختار یافته” معنی میکنند.
SQL Server یک سیستم مدیریت پایگاه داده رابطه ای از مایکروسافت است که هدف اصلی آن ذخیره و مدیریت اطلاعات و داده هاست. این سیستم از عملیات مختلف تجاری، عملیات تحلیل داده و پردازش معاملات پشتیبانی می کند.
هر دیتابیس محلی برای ذخیره اطلاعات است اما SQL Server امکان مدیریت آن ها را نیز فراهم می کند.
کدهای پایه این نرمافزار، ابتدا توسط شرکت Sybase SQL Server طراحی شد و بعدها شرکت مایکروسافت، امتیاز کامل آن نرمافزار را خریداری نمود. هدف مایکروسافت از خریداری این نرمافزار، ارتقای آن به سطوح بالاتر و رقابت با دیتابیسهای ارایه شده توسط شرکتهای Oracle و IBM بود.
یکی از قدرتمند ترین و محبوب ترین نرم افزارهای ساخت و مدیریت پایگاه داده Microsoft SQL Server است. SQL نیز یک نوع بانک اطلاعاتی است که دیتابیس آن از نوع رابطه ای یا relational است.
کاربرد اصلی آن در ذخیره و بازیابی اطلاعات است، که در واقع بر اساس درخواستی که از نرم افزارهای دیگر دریافت می کند اطلاعات را ذخیره یا بازیابی خواهد کرد.
SQL چیست ؟
کلمه SQL مخفف کلمات Structured Query Language به معنای زبان کوئری نویسی ساختار یافته میباشد. از این زبان در دیتابیس های رابطه ای استفاده میشود. پایگاه داده های رابطه ای بر پایه جداول و ارتباطات یا همان Relationship هستند. زبان SQL به ما کمک میکند تا با کوئری نویسی بتوانیم که پایگاه داده را ایجاد و مدیریت کنیم.
مزایا و معایب sql server
سیستم مدیریت پایگاه داده SQL Server دارای مزایای زیادی نظیر قدرت ذخیره سازی، سرعت بارگذاری و واکشی، امنیت بالا در نگهداری داده ها و امکان مدیریت پایگاه داده های عظیم میباشد. اما در کنار تمام این ویژگی ها، دارای معایبی نظیر Open Source نبودن، سختی یادگیری و استفاده، حجیم بودن پایگاه داده و متکی بودن به ویندوز سرور میباشد. از آنجایی که مایکروسفات سازنده این پایگاه داده است، برای استفاده از آن بایستی از زبان های دات نت استفاده کرده و سرور شما نیز ویندوزی باشد. این شرایط میتواند برای بسیاری از برنامه نویسان سخت به نظر برسد.
sql server چیست و چه کاربردی دارد؟
اس کیو ال سرور یک پایگاه داده رابطه ای مبتنی بر زبان SQL است که توسط شرکت مایکروسافت توسعه داده شده. اگر از برنامه نویسان دات نت هستید و یا قصد یادگیری برنامه نویسی سی شارپ و ASP.Net را دارید، قطعا Microsoft SQL Server یکی از مهمترین نیاز های شما خواهد بود. این پایگاه داده توانایی و قدرت بسیار بالایی در ذخیره سازی داده ها دارد. پس تعداد زیادی از کاربران قادر خواهند بود به صورت همزمان از این داده ها استفاده کنند.
انواع نسخه های SQL سرور
دیتابیس SQL Server دارای نسخه های متنوعی میباشد. هر نسخه در یکی از سالهای میلادی منتشر شده و در اختیار توسعه دهندگان قرار گرفته. در ادمه برخی از نسخه های موجود را نام میبریم :
- نسخه ۲۰۰۵ SQL Server: نسخه SQL Server 2005 با نام کد Yukon، در ماه اکتبر ۲۰۰۵ به عنوان نسخه گسترش یافته SQL Server 2000 منتشر گردید.
- ۲۰۰۸ SQL Server: نسخه SQL Server 2008 با نام Katmai، در ۶ آگوست سال ۲۰۰۸ با هدف ایجاد دیتابیسهای خودتنظیم (Self-tuning)، خودسازمانده (Self-Organizing) و خودنگهدار (Self-Maintain) منتشر شد.
- SQL Server 2012: در سال ۲۰۱۱ مایکروسافت نسخه دیگری از اسکیوال سرور را با کد “Denali” منتشر کرد. این نسخه آخرین نسخهای بود که از OLE DB پشتیبانی میکرد و قرار شد که ODBC جایگزین آن شود.
- SQL Server 2014: نسخه ۲۰۱۴ در آوریل ۲۰۱۴ با شماره ۱۲.۰ عرضه شد. این نسخه، قابلیت جدیدی را برای مدیریت حافظه اضافه کرد که بر اساس آن، جداول میتوانند بطور کامل در حافظه قرار بگیرند.
- SQL Server 2016: این نسخه در سال ۲۰۱۶ با شماره ۱۳.۰ منتشر شده است. SQL Server 2016 ، دیگر از پردازندههای ۳۲بیتی پشتیبانی نمیکند.
- نسخه SQL Server 2019: اسکیوال ۲۰۱۹ بهینهسازیهای مختلفی را در بخشهای مختلف اعمال کرده است. در حال حاضر این نسخه، جدیدترین نسخهای است که مایکروسافت عرضه کرده
مهمترین ویژگی های SQL Server
۱- بانک اطلاعاتی آن از نوع رابطه ای یا relational است.
۲- از فایل های XML پشتیبانی می کند.
۳- ویژگی OLAP را دارد.
۴- می توان از trigger، view و stored procedure استفاده کرد.
۵- از لحاظ حجم و تعداد رکورد هیچ محدودیتی ندارد و از این لحاظ بسیار قدرتمند است.
۶- امکان استفاده از زبان طبیعی در جستجو ها وجود دارد.
۷- برای افزایش سرعت در بازیابی اطلاعات از Full Text Search می توان استفاده کرد.
پس می توان گفت SQL Server یک سیستم مدیریت پایگاه داده رابطه ای یا RDBMS است، که توسط شرکت مایکروسافت توسعه پیدا کرده است. این سیستم برای رقابت با پایگاه داده MySQL و Oracle طراحی شده و توسعه پیدا کرده است. این سیستم از زبان استاندارد ANSI SQL پشتیبانی می کند، که زبان استاندارد SQL است.
تاریخچه SQL سرور
در سال ۱۹۸۹ مایکروسافت و Sybase ورژن ۱.۰ آن را منتشر کردند. اما همکاری این دو شرکت در دهه ۱۹۹۰ پایان یافت. بعد از دهه ۱۹۹۰ نسخه های بعدی SQL Server شامل ۲۰۰۰، ۲۰۰۵، ۲۰۰۸، ۲۰۱۲، ۲۰۱۴، ۲۰۱۶ و ۲۰۱۷ منتشر شده است.
Microsoft SQL Server (MS SQL Server) یک نرم افزار مدیریت پایگاه داده است که می تواند بر روی سیستم عامل ویندوز سرور نصب شود. پایگاه های داده برای همه انواع شرکت ها مهم هستند و بسیاری از راه حل های نرم افزاری از پایگاه های داده ای استفاده می کنند که می توانند متمرکز و توزیع شوند.
تفاوت بین پایگاه داده و SQL Server چیست؟
دقت کنید که پایگاه داده به مفهوم ذخیره سازی دائمی داده ها در قالب فایل هایی رمزنگاری شده میباشد. اما کار کردن با این فایل های رمزگذاری شده کمی سخت و پیچیده خواهد بود. برای همین سیستم های مدیریت پایگاه داده یا همان DBMS ها روی کار آمدند. SQL Server یک سیستم مدیریت پایگاه داده میباشد که با استفاده از آن میتوان یک پایگاه داده رابطه ای را ایجاد و مدیریت کرد.
مزایای نصب چند نمونه SQL Server
۱- امکان نصب نسخه های مختلف بر روی یک دستگاه
شما می توانید نسخه های مختلفی از اس کیو ال سرور را روی یک دستگاه داشته باشید. هر نسخه نصب شده مستقل از دیگر موارد کار می کند.
۲- کاهش هزینه
در صورتی که چند نمونه داشته باشید دیگر نیازی به لایسنس نخواهید داشت. در این صورت خواهید توانست هر قسمت از خدمات را از یک نسخه دریافت نمایید.
۳- امکان نگهداری از محیط توسعه، تولید و آزمایش به صورت جداگانه
از مهمترین مزیت ها به شمار می رود، زیرا می توان برای اهداف مختلف نسخه های مجزا داشت و استفاده نمود.
۴- کاهش مشکلات موقتی بانک اطلاعاتی
اگر تمام اطلاعات خود را در یک بانک اطلاعاتی ذخیره نمایید، احتمال بروز مشکل بسیار بالا است. اگر چند نسخه داشته باشید احتمال این مشکلات بسیار کاهش خواهد یافت.
۵- تفکیک امتیازات امنیتی
درصورت استفاده از نمونه های مختلف می توانید تمرکز تامین امنیت را بر روی ضروری ترین بخش بگذارید.
۶- حفظ سرور به صورت آماده به کار
در این صورت دیگر با قطع شدن یک نمونه، کل موارد از کار نمی افتد و می توان با باقی نمونه ها به کار ادامه داد.
نسخههای موجود Microsoft SQL Server
Mainstream editions
۱. Enterprise
Enterprise:: به عنوان کامل ترین نسخه، برای سازمانهایی در نظر گرفته شده است که نیاز به کار با سطوح بالایی از خدمات برای بارهای کاری حیاتی دارند.
۲. Standard
استاندارد: طراحی شده برای ارائه ابزاری به کسب و کارهای کوچک که مدیریت دادههای اولیه را برای اجرای برنامههای آنها فراهم میکند و از ابزارهای توسعه رایج برای محیطهای داخلی یا ابری پشتیبانی میکند.
۳. Express
Microsoft SQL Server Express نسخه ای از سیستم مدیریت پایگاه داده رابطه ای SQL Server مایکروسافت است که دانلود، توزیع و استفاده آن رایگان است. این نسخه شامل یک پایگاه داده است که به طور خاص برای برنامه های کاربردی تعبیه شده و در مقیاس کوچکتر هدف قرار گرفته است.
۴. Developer
توسعه دهنده: با ادغام تمام عملکردهای Enterprise، برای همه آن دسته از توسعه دهندگان طراحی شده است که مایلند یک سیستم آزمایش و توسعه برای کامپایل هر نوع برنامه در SQL Server داشته باشند، نه برای یک محیط تولید، بلکه فقط برای آزمایش در دسترس باشند.
۵. Web
SQL Server Web Edition یک گزینه با TCO پایین برای میزبانی وب است.
۶. Business intelligence
معرفی شده در SQL Server 2012 و با تمرکز بر Self Service و Corporate Business Intelligence میباشد. این نسخه شامل قابلیتهای نسخه استاندارد و ابزارهای هوش تجاری است: Power Pivot، Power View، مدل معنایی BI، خدمات داده اصلی، خدمات کیفیت داده و تجزیه و تحلیل درون حافظه xVelocity.
۷. Workgroup
SQL Server Workgroup Edition شامل عملکرد اصلی پایگاه داده است اما خدمات اضافی را شامل نمیشود. توجه داشته باشید که این نسخه در SQL Server 2012 منقضی شده است.
۸. Express
SQL Server Express Edition یک نسخه کوچک شده و رایگان از SQL Server است که شامل موتور پایگاه داده اصلی است. در حالی که هیچ محدودیتی در تعداد پایگاههای داده یا کاربران پشتیبانیشده وجود ندارد، محدود به استفاده از یک پردازنده، حافظه ۱ گیگابایتی و فایلهای پایگاه داده ۱۰ گیگابایتی است (فایلهای پایگاه داده ۴ گیگابایتی قبل از SQL Server Express 2008 R2) به عنوان جایگزین در نظر گرفته شده است
معماری SQL سرور
پایگاه داده NoSql
برای ذخیره کردن و مدیریت انواع دادههای توزیع شده در حجم زیاد از دیتابیس NoSql استفاده میشود. در این پایگاه داده خبری از جداول نیست و به عنوان یک پایگاه داده غیررابطهای هم شناخته شدهاند. معمولا دیتابیس NoSql برای مدیریت بیگدیتا کاربرد دارد. دادههای ساختار یافته، بدون ساختار و یا نیمهساختار یافته جزو موارد کلانداده یا بیگدیتا محسوب میشوند.
دیتابیس MySQL
یک سیستم مدیریتی پایگاه داده (Database) است که میتواند به عنوان جایگزین مایکروسافت اکسس یا اس کیو ال سرور مورد استفاده قرار گیرد. MySQL سیستمی است که اطلاعات را ذخیره و مدیریت میکند و دارای ویژگیهایی شامل کارایی زیاد، هزینه راهاندازی و نگهداری کم، کاربری آسان، پشتیبانی مطلوب و رابطهی خوب با زبان برنامه نویسی PHP است.
این سیستم به صورت open source با یک مدل کلاینت-سرور به کاربران سرویس دهی میکند. رایانههایی که نرم افزار RDBMS را پشتیبانی میکنند، کلاینت نامیده میشوند. در حال حاضر برنامههای پرکاربردی مانند Facebook، You Tube، Twitter و Google از MySQL با هدف ذخیرهسازی داده استفاده میکنند.
دیتابیس PostgreSQL
پستگرس کیو ال یا پستگرس به عنوان یک بانک اطلاعاتی رابطه ای-شیگرا متن باز به حساب میآید. این پایگاه داده یکی از قویترین بانکهای اطلاعاتی متن باز دنیا است که با هدف تقویت استانداردهای انطباق و توسعه ایجاد شدهاست.
پستگرس کیو ال مبتنی بر SQL است و برای جستوجوهای رابطهای و غیر رابطهای خود از SQL و JSON پشتیبانی میکند. دیتابیس PostgreSQL در ساخت و توسعه اپلیکیشنها کمک کننده است و با سیستم عاملهای مختلف و تمام زبان های برنامه نویسی و میان افزارهای متفاوت سازگاری دارد
کاربرد های SQL سرور
از بارز ترین مشخصه های SQL سرور این است که به کمک آن می توان با بانک های اطلاعاتی پر حجم در حد ترابایت کار کرد. از دیگر موارد این است که امکان دسترسی هزاران کاربر به صورت همزمان به این بانک اطلاعاتی وجود دارد. قابلیت خود سازگاری یا Self Compatibility نیز از دیگر ویژگی های SQL سرور است. این قابلیت باعث می شود تا منابع مورد نیاز برای هر کاربر مانند حافظه و فضای دیسک، به محض اینکه به سرور متصل شود به صورت کاملا اتوماتیک به او تخصیص داده شود. همچنین پس از خروج کاربر منابعی که به او اختصاص یافته بود آزاد می شود تا سایر کاربران بتوانند از آن استفاده نمایند.
Reliability یا قابلیت اعتماد و در دسترس بودن نیز از ویژگی های خوبی است که SQL سرور دارد. این ویژگی امکان انجام بسیاری از فعالیت های مدیریتی مانند Backup را بدون اینکه سرور توقف کند به شما می دهد. همچنین سطح امنیتی بالا باعث می شود تا اعتبار سنجی کاربران با اعتبار سنجی ویندوز تجمیع گردد. ویژگی دیگر این سرور، پشتیبانی از حجم بالایی از حافظه در سرور است. همچنین امکان استفاده از چندین پردازنده به صورت موازی نیز وجود دارد. به علاوه پشتیبانی از لایه ها و موارد امنیتی مانند SSL برای استفاده در وب وجود دارد.
ویژگیهای امنیتی پیشرفتهای که در تمامینسخههای Microsoft SQL Server با SQL Server 2016 SP1 پشتیبانی میشوند، شامل سه فناوری اضافه شده به نسخه ۲۰۱۶ میشوند: Always Encrypted، که به کاربر اجازه میدهد دادههای رمزگذاری شده را بدون نیاز به رمزگشایی، امنیت سطح ردیف اول را بهروزرسانی کند، که دادهها را فعال میکند. دسترسی باید در سطح ردیف در جداول پایگاه داده کنترل شود. و پوشش داده پویا، که به طور خودکار عناصر دادههای حساس را بدون دسترسی کامل از کاربران پنهان میکند.
نحوه عملکرد SQL Server
توابع و ویژگیهای مایکروسافت SQL Server
به طور خلاصه میتوان به برخی از ویژگیهای اصلی Microsoft SQL Server اشاره کرد:
۱. هوشمندی بر روی تمام دادههای خود با خوشههای Big Data: قادر به پرس و جو کردن کل دادههای خود از SQL Serve به Oracle بدون تکرار.
۲. انتخاب زبان و پلتفرم: از ویندوز یا لینوکس تا استقرار Kubernetes.
۳. قابلیتهای پایگاه داده هوشمند: حافظه داخلی، پشتیبانی از حافظه مداوم، tempbd بهینه سازی شده در حافظه
۴. رمزگذاری و انطباق دادهها: سیستم حفاظت، نظارت و طبقه بندی دادهها آن را به یکی از امن ترین پلت فرمها بر اساس پایگاه داده موسسه ملی استاندارد و فناوری به مدت ۹ سال تبدیل کرده است.
۵. BI موبایل و مقیاس پذیری: به شما این امکان را میدهد تا به راحتی سیستمهای مدیریت پایگاه داده خود را با هر دستگاه و سرویسهای Azure برای عملکرد بهتر و قابلیتهای تحلیلی روی دادهها یکپارچه کنید.