استفاده از sqlite در ترمینال لینوکس

استفاده از sqlite در ترمینال لینوکس

sqlite در ترمینال
پایگاه داده

استفاده از sqlite در ترمینال لینوکس

 

معرفی کلی SQLite
SQLite یک سیستم مدیریت پایگاه داده رابطه‌ای (RDBMS) بسیار سبک، سریع و قابل اطمینان است که برخلاف بسیاری از پایگاه‌های داده دیگر مانند MySQL یا PostgreSQL، نیازی به سرویس‌دهنده جداگانه (Server) یا فرآیند مستقل برای اجرا ندارد. این نرم‌افزار به صورت توکار (Embedded) درون برنامه‌ای که از آن استفاده می‌کند اجرا می‌شود و کل پایگاه داده را در قالب یک فایل معمولی روی دیسک ذخیره می‌کند. این ویژگی منحصربه‌فرد باعث شده است که SQLite به انتخابی ایده‌آل برای برنامه‌های موبایل (اندروید و iOS)، مرورگرهای وب، دستگاه‌های IoT، و اپلیکیشن‌های دسکتاپ کوچک تبدیل شود، زیرا نیازی به نصب و پیکربندی پیچیده ندارد.
از مهم‌ترین مزایای SQLite می‌توان به عدم نیاز به پیکربندی، قابلیت حمل‌آسان (فقط کافی است فایل دیتابیس را کپی کنید)، و رعایت کامل استانداردهای SQL اشاره کرد. این پایگاه داده برای پروژه‌های کوچک و متوسط، توسعه و تست نرم‌افزار، و ذخیره داده‌های محلی برنامه‌ها بسیار مناسب است. با این حال، SQLite برای سناریوهای سنگین با همزمانی بالا (Concurrency) که تعداد زیادی کاربر همزمان نیاز به نوشتن داده داشته باشند، طراحی نشده است. همچنین امکانات مدیریت کاربر و دسترسی پیشرفته (مانند grant/revoke) را ندارد. به همین دلیل، برای سیستم‌های وب بزرگ و سازمانی با ترافیک بالا، معمولاً از پایگاه‌های داده سرویس‌محور مانند PostgreSQL یا MySQL استفاده می‌شود.

همه میدانیم که بصورت عادی با محیط GUI ابزارهای زیادی از جمله DataGrip یا Navicat یا sqlite browser برای دسترسی به دیتابیسهای sqlite فراهم است اما چنانچه میخواهید دسترسی به sqlite در ترمینال داشته باشید میبایست برنامه sqlite را نصب کنید. برای نصب در اوبونتو از دستور زیر استفاده کنید:
apt install sqlite

 

سپس امکان آنرا دارید که فایل دیتابیس را با دستور sqlite [DB path/DB name]

پس از اتصال امکان اجرای کوئری خواهید داشت اما جهت سهولت استفاده چند مورد از دستورات ضروری sqlite3 را در فلسک دولوپر با هم مرور میکنیم:

  • .tables برای مشاهده جداول
  • .tables [pattern] برای مشاهده جدول با الگوی خاص مثلا با users آغاز شود (users%)
  • .quit خروج از sqlite
  • با نوشتن کوئری شما عنوان ستون های جداول را نمیبینید، برای داشتن عناوین ستون ها باید از این دستور استفاده کنید : .headers on

 آیا استفاده از sqlite امن است؟

برای پاسخ به این سوال باید سناریو خود را مرور کنید. در شرایطی ممکن است استفاده sqlite امن و معقول باشد. بطور کلی sqlite بیشتر امکانات Mariadb یا Postgresql را دارا نیست اما میتواند در سناریو های کوچک یا داده های موقت بخوبی نقش ایفا کند، ساختار server less در sqlite سبب میشود با شبکه درگیر نبوده و برای برنامه هایی با ترافیک کم بهتر از سایرین عمل کند اما نباید فراموش کرد که چون همه چیز وابسته به یک فایل است آسیب پذیری جدی بخصوص در هنگام حملات بد افزاری وجود خواهد داشت. همچنین وابستگی زیاد به سرعت دیسک ممکن است محدودیت هایی برای شما ایجاد کند.

دیدگاه خود را اینجا بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

فیلدهای دلخواه برای نمایش را انتخاب کنید. سایر فیلدها مخفی می شود. برای ترتیب دلخواه فیلدها را به محل دلخواه بکشید و رها کنید.
  • عكس
  • شناسه محصول
  • امتیاز
  • قیمت
  • موجودی
  • موجودی
  • افزودن به سبد خرید
  • توضیحات
  • محتوا
  • وزن
  • ابعاد
  • اطلاعات تکمیلی
برای مخفی شدن نوار مقایسه، بیرون از کادر کلیک کنید
مقایسه