نصب و راه اندازی MySQL-Server در CentOS و RedHat

MySQL یک پایگاه داده رابطه ای که قابلیت نصب و راه اندازی در بیشتر سیستم عامل ها مانند لینوکس، مکینتاش، FreeBSD و ویندوز قابل نصب است. سه نرم افزار PHP,MySQL و Apache بسته نرم افزاری LAMP که مخفف Linux Apache MySQL PHP را تشکیل می دهند بعنوان بستری برای راه اندازی سایت ها و Web Appliaction ها در سیستم عامل های گفته شده بکار می روند. در این پست چگونگی نصب و راه اندزی پایگاه داده MySQL 5.5 را در توزیع های CentOS,RedHat و Oracle Linux آموزش داده می شود.

نصب MySQL

برای نصب MySQL Server دستور زیر را در خط فرمان اجرا کنید.

yum  install  mysql-server  mysql

دستور بالا هسته اصلی MySQL یعنی برنامه mysql و همچنین نیازمندی های سرو MySQL یعنی mysql-server را نصب می کند. پس از نصب برنامه های بالا سرویس MySQL به نام mysqld نصب می شود. اولین کاری که بعد از نصب باید انجام داده راه اندازی یا فعال یا start کردن این سرویس است. همانطور که می دانید لینوکس دارای سطوح اجرایی هست. در خطوط زیر دستور اول سرویس mysqld را در سطوح   فعال می کند. این کار باعث می شود پس از راه اندازی مجدد سیستم(Restart) و یا تغییر سطح اجرایی بازهم سرویس mysqld هنوز در دسترس باشد. خط دوم بطور کلی سرویس را start یا فعال می کند. تا زمانی که سرویسی (مانند mysqld) فعال یا start نشده باشد قابل استفاده نیست.

chkconfig  mysqld  on

etc/init.d/mysqld  start/

پایگاه داده MySQL دارای یک کاربر مدیر به نام root است. باید با دستور زیر کلمه عبوری برای root تعیین کنیم.برای این کار از ابزار مدیریتی mysqladmin استفاده می کنیم. این ابزار، یک دستور مدیریتی است که به همراه بسته mysql نصب می شود. در خط زیر سوئیچ u- تعیین کننده Username و سویچ password تعیین کننده Password یا کلمه عبور برای کاربر است. شکل کلی تعیین پسورد برای یک کاربر بصورت زیر است :

mysqladmin  -u  Username  password  YourPassword

بطور مثال برای تعیین پسورد کاربر root خط زیر را می نویسیم که پسورد کاربر را کلمه P@ssw0rd تعیین می کند و از این پس کاربر root با این کلمه می تواند وارد MySQL سود.

mysqladmin  -u  root  password  P@ssw0rd

چگونه وارد وحیط خط فرمان MySQL شویم

پس از ایجاد هر کاربر و پسوردش، می توانیم وارد سیستم شویم. برای ورود به محیط MySQL که در این محیط می توانیم اعمال مدیریتی مانند ایجاد، حذف کاربران و اعطای مجوز ها به کاربران و … را انجام دهیم. برای ورود به این محیط باید از دستور mysql به شکل کلی زیر استفاده کنیم. در شکل کلی زیر از دستور mysql سوئیچ u- برای تعیین نام کاربری یا Username و سویچ p- معرف وارد کردن پسورد است. برای امنیت بیشتر جلوی سوئیچ p- پسورد را نمی نویسیم بلکه پس از نوشتن شکل کلی زیر و زدن Enter یک اعلان برای گرفتن پسورد از شما نمایش داده می شود.

mysql  -u  Username  -p

بطور مثال برای کاربر root بصورت زیر است.

mysql   -u  root  -p

پس از Enter زدن خط بالا اعلان Enter Password نشان داده می شود که باید پسورد کاربر root را وارد کنید. اگر پسورد را درست وارد کرده باشید اعلان محیط خط فرمان MySQL بصورت زیر نشان داده می شود.

<mysql

از این پس می توانید Query ها را اجرا کنید. اگر به هر دلیلی سرویس mysqld دچار مشکل شد یا اینکه می خواهید آنرا راه اندازی مجدد یا reset کنید با یکی از دستور های زیر این کار را انجام دهید. تفاوتی که بین reload و resatart وجود دارد این است که با reload کردن ارتباط کاربران به سرور mysql قطع نخواهد شد ولی با restart کردن سرویس یکبار stop و از نو start می شود که باعث قطع ارتباط می شود. سومین دستور هم سرویس را stop می کند.

etc/init.d/mysqld  reload/

etc/init.d/mysqld   restart/

etc/init.d/mysqld    stop/

با دو دستور mysqladmin و mysql اشنا شدیم. اولین دستور برای کارهای مدیریتی استفاده می شود و دستور mysql که دارای سوئیچ های زیادی است با استفاده از سوئیچ های u- و p- وارد محیط MySQL بشویم. در مثال بالا ما وارد یک محیط MySQL در لوکال هاست شدیم ولی می توانیم از یک کلاینت MySQL یا از سرور MySQL دیگری وارد یک سرور MySQL شویم به این حالت معماری Client/Server گویند.

اجرای دستور های محیط MySQL

اگر توانسته باشید با Username/Password وارد محیط MySQL شده باشید. اولین دستوری که اجرا کنید help است. این دستور لیست تمامی فرامین این محیط را نشان می دهد.(دقت کنید تمامی دستور ها در MySQL کوچک هستند و خود MySQL به بزرگی و کوچکی حساس است). در این فایل (Mysql Cmd) دستور ها نشان داده شده است که برخی از آنها را توضیح می دهم. تمامی دستور های بالا شکل خلاصه شده ای مانند c\ را دارند که با نوشتن کامل دستور تفاوتی ندارد.

connect : برای کانکت مجدد یا reconnect شدن است. شکل کلی آن بصورت زیر است و میتوانید بجای نوشتن connect از r\ استفاده کنید. پارمترهای db_name و host_name اختیاری هستند. و نوشتن خالی connect یا r\ کفایت می کند.

[[connect [db_name host_name]], \r [db_name host_name

system : باعث اجرای یک دستور سیستم عامل مانند ls در لینوکس و یا dir در ویندوز از درون محیط MySQL می شود. شکل کلی آن بصورت زیر است. جای commnd هر دستوری را می توانید بنویسید. شکل خلاصه شده system نماد !\ است.

system command, \! command

status : نمایش حالت یا Status کانکشن(Connection) فعلی را نشان می دهد. اطلاعاتی همچون Session ID، نام کاربری و از کدام ماشین وارد شده است، ایا از پروتوکل امن SSL استفاده شده است و … را نشان می دهد. برای ایجاد هر ارتباط نیاز به وارد کردن یک نام کاربری و پسورد است که ورود یک جلسه یا Session برای ترکیب Username/Password ایجاد می شود. البته ممکن است که از یک ماشین یا از ماشین های متفاوت و با استفاده از نام کاربری/پسورد یکسان چندین جلسه ایجاد شود که هر کدام ID خاص خودشان را دارند. البته امکان محدود کردن جلسات برای هرذ Username مقدور است. شکل کلی استفاده از آن بصورت زیر است.

status, \s

برای اطلاع بیشتر می توانید این منبع را مطالعه کنید.

فایل my.cnf فایلی پیکربندی MySQL که دررون دایرکتوری etc/ قرار دارد. در پستی (های) مجزا این فایل بررسی می شود. فایل دیگر، فایل Log سرویس mysqld است که در مسیر var/log/ و به نام mysqld.log قرار دارد.