آموزش نصب ، معرفی و نحوه استفاده PostgreSQL در CentOS 7

ایجاد شده توسط | آبان ۱۲, ۱۳۹۵

PostgreSQL

سیستم های مدیریت پایگاه داده رابطه ای ابزار اصلی بسیاری از وب سایت ها و برنامه هاست. این گونه دیتابیس ها یک راه ساختار یافته برای ذخیره، سازماندهی و دسترسی فراهم کرده اند. PostgreSQL یا همان Postgres ساختاری را ارائه کرده تا Query های SQL را هندل کند. عملکرد اصلی این پایگاه داده ذخیره ایمن اطلاعات و پاسخ به درخواست ها میباشد. این پایگاه داده نیز مانند دیگر ابزار های لینوکس متن باز و رایگان میباشد.

postgresql-wikiconfig

 این دیتابیس میتواند از محدوده کاری کوچک تا برنامه های عظیم با تعداد کاربران concurrent زیاد را پشتیبانی نماید. Concurrency در این پایگاه داده توسط سیستم MVCC یا Multi Version Concurrency Control مدیریت میشود. در این مقاله نحوه نصب و آموزش مقدماتی ان را مورد بحث قرار میدهیم.

نصب PostgreSQL

مخزن نرم افزاری پیشفرض CentOS پکیج این دیتابیس را دارا میباشد و میتوانید ان را به راحتی با استفاده از دستور yum نصب نمایید. نام پکیج این دیتابیس postgresql-server میباشد که میتوانید برای داشتن ابزار های دیگر postgresql-contrib را نیز نصب نمایید.

در پاسخ به سوالات در هنگام نصب کلید “y” را بزنید تا نصب کامل شود. حالا این نرم افزار نصب شده و باید قبل از استفاده از ان چند مرحله دیگر را نیز انجام دهید. پس از این مرحله دیتابیس postgresql نصب شده است و جهت استفاده از ان نیاز است تا برخی مراحل را انجام دهیم.

یک cluster جدید از postgresql  ایجاد نمایید:

در حالت پیشفرض این دیتابیس مجوز احراز هویت [authentication] با کلمه عبور را به کاربر نمیدهید، که این مورد توسط ما با ویرایش host-based authentication فعال خواهد شد. فایل pg-hba را با ویرایشگر باز نمایید:

سپس خطهایی که مانند خط های زیر است را پیدا نمایید:

سپس متغییر “ident” را به “md5” تغییر دهید:

 پس از ویرایش تغییرات را ذخیره و سپس خارج شوید. سپس سرویس postrgresql را ریستارت نمایید:

پس از انجام مراحل بالا این دیتابیس اماده استفاده میباشد. در ادامه مقاله کمی در مورد نحوه کار و دستورالعمل های این دیتابیس بحث میکنیم.

استفاده از PostgreSQL و Role ها

بصورت پیشفرض Postgres برای کمک به عملیات authentication و authorization از roles استفاده میکند. این راهکار شبیه برخی از روش های شبیه به اکانت کاربری در سیستم های Unix است، البته postgresql تفاوتی بین کابران و گروه ها قائل نمیشود و جهت انعتاف پذیری ترجیح بر استفاده از role ها بوده است.

پس از نصب، postgresql از حالت اعتبارسنجی “ident” استفاده میکند به این معنی که این دیتابیس از مکانیزم اکانت کاربری Unix-Linux استفاده میکند. اگر role مربوط به postgres وجود داشته باشد میتواند با اکانت کاربری لینوکس/یونیکس به ان وارد شد. رویه نصب یک اکانت کاربری با نام postgres ایجاد میکند که با role پیشفرض مرتبط میباشد. برای استفاده از postgres باید به این اکانت لاگین نمایید. برای لاگین به اکانت مربوط باید از دستور زیر استفاده نمایید:

پس از وارد کردن این دستور در خط فرمان پسوورد این نام کاربری پرسیده میشود. هنگامی که پسوورد را وارد کردید یک خط فرمان با کاربر postgres به شما داده میشود.(در حالت پیشفرض این نام کاربری غیر فعال میباشد که میتوانید با استفاده از دستور passwd پسوورد این نام کاربری را تغییر و ان را فعال نمایید)

میتوانید برای دسترسی سریع به این دیتابیس از دستور زیر استفاده نمایید:

پس از وارد کردن دستور بالا بصورت اتوماتیک لاگین میشوید و میتوانید دیتابیس را مدیریت کنید. برای خارج شدن از محیط دستور postgres میتوانید از دستور زیر استفاده نمایید (البته در ادامه کار باید با اکانت postgres وارد شوید):

ساخت یک Role جدید

با استفاده از اکانت postgres در لینوکس میتوانید وارد دیتابیس ها شوید، اگر چه در این بخش نحوه ساخت role جدید برسی خواهد شد. کاربر لینوکسی postgres همراه با role ادمین به یک سری از ابزار های ساخت کاربر و دیتابیس دسترسی دارد. با استفاده از دستور زیر میتوانید یک role ایجاد نمایید:

بطور ساده میتوان گفت این یک اسکریپت شل ساده است که دستور ایجاد کاربر با بطور صحیح به این دیتابیس ارسال میکند. پس از وارد کردن این دستور ابتدا از شما نام role مورد نظر پرسیده میشود و سپس سطح دسترسی کاربر در حال ایجاد شدن را نیز تعیین می نمایید. با استفاده از flag های خاص میتوانید کنترل های دیگری روی این دستور داشته باشد. برای مطالعه راهنمای کامل این دستور را وارد نمایید:

ایجاد دیتابیس جدید

 شما توسط یوزر postgres میتوانید با دستور زیر یک دیتابیس ایجاد نمایید:

اتصال کاربر جدید ایجاد شده به postgres

تصور کنید شما یک کاربر ایجاد شده در لینوکس با نام test1 دارید (ایجاد شده توسط دستور adduser test1) و در کنار ان یک role و دیتابیس test1 نیز ایجاد کرده اید. میتوانید با استفاده از دستور زیر اکانت سیستمی ایجاد شده را تغییر دهید:

پس از ان میتوانید با تایپ کردن دستور زیر دیتابیس test1 را به role ایجاد شده test1 متصل نمایید:


موفق باشید

منبع “ٌWikiConfig

پاسخ دهید

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