مدیریت اجرا یا توقف در پایگاه داده MySQL – راهنمای جامع


در این بخش از سلسله مطالب آموزش پایگاه داده MySQL به آموزش شیوه اجرا و متوقف کردن این پایگاه داده برای مدیریت MySQL محبوب میپردازیم. ابتدا باید مطمئن شوید که آیا پایگاه داده در حال اجرا است یا نه. بدین منظور میتوانید از دستور زیر بهره بگیرید:
ps -ef | grep mysqld
اگر MySQL در حال اجرا باشد، در این صورت پروسس MySQL در نتایج دستور فوق مشاهده میشود. اگر سرور در حال اجرا نباشد، میتوانید آن را با استفاده از دستور زیر آغاز کنید:
root@host# cd /usr/bin ./safe_mysqld &
اینک اگر بخواهید یک سرور از قبل اجرا شده MySQL را متوقف کنید، این کار را میتوانید با دستور زیر انجام دهید:
root@host# cd /usr/bin ./mysqladmin -u root -p shutdown Enter password: ******
راهاندازی یک حساب کاربری MySQL
برای افزودن یک کاربر جدید به MySQL تنها کافی است یک مدخل جدید به جدول user در پایگاه داده mysql اضافه کنید.
برنامه زیر نمونهای از روش افزودن یک کاربر جدید به نام guest با دسترسیهای SELECT، INSERT و UPDATE و با رمز عبور guest123 است، کوئری SQL مربوطه به صورت زیر است:
root@host# mysql -u root -p Enter password:******* mysql> use mysql; Database changed mysql> INSERT INTO user (host, user, password, select_priv, insert_priv, update_priv) VALUES ('localhost', 'guest', PASSWORD('guest123'), 'Y', 'Y', 'Y'); Query OK, 1 row affected (0.20 sec) mysql> FLUSH PRIVILEGES; Query OK, 1 row affected (0.01 sec) mysql> SELECT host, user, password FROM user WHERE user = 'guest'; +-----------+---------+------------------+ | host | user | password | +-----------+---------+------------------+ | localhost | guest | 6f8c114b58f2ce9e | +-----------+---------+------------------+ 1 row in set (0.00 sec)
هنگامی که یک کاربر جدید اضافه میکنید به خاطر داشته باشید که رمز عبور جدید را با استفاده از تابع ()PASSWORD ارائه شده از سوی MySQL رمزنگاری کنید. همان طور که در مثال فوق میبینید، رمز عبور mypass به صورت 6f8c114b58f2ce9e رمزنگاری شده است.
به عبارت FLUSH PRIVILEGES توجه کنید. این عبارت به سرور میگوید که جدولهای grant را مجدداً بارگذاری کند. اگر از آن استفاده نکنید، در این صورت نمیتوانید تا زمان ریاستارت شدن سرور، با استفاده از حساب کاربری جدید به این جدولها وصل شوید. شما همچنین میتوانید با تعیین مقادیر مربوط در ستونهای متناظر جدول کاربر به صورت Y هنگام اجرای کوئری INSERT دسترسیهای دیگر به این کاربر بدهید. این کار بعداً از طریق کوئری UPDATE نیز میسر است.
- Select_priv
- Insert_priv
- Update_priv
- Delete_priv
- Create_priv
- Drop_priv
- Reload_priv
- Shutdown_priv
- Process_priv
File_priv - Grant_priv
- References_priv
- Index_priv
- Alter_priv
یک روش دیگر برای افزودن حساب کاربری، استفاده از دستور GRANT SQL است. در مثال زیر ما یک کاربر به نام zara و با رمز عبور zara123 به یک پایگاه داده خاص به نام TUTORIALS اضافه میکنیم:
root@host# mysql -u root -p password; Enter password:******* mysql> use mysql; Database changed mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP -> ON TUTORIALS.* -> TO 'zara'@'localhost' -> IDENTIFIED BY 'zara123';
دستور فوق یک مدخل در جدول user پایگاه داده ایجاد میکند.
نکته: MySQL تا زمانی که از نقطهویرگول (;) در انتهای دستور استفاده نکرده باشید آن دستور را نمیبندد.
پیکربندی فایل etc/my.cnf/
در اغلب موارد شما باید تنظیماتی را در این فایل تغییر دهید که به طور پیشفرض در مدخلهای زیر است:
[mysqld] datadir = /var/lib/mysql socket = /var/lib/mysql/mysql.sock [mysql.server] user = mysql basedir = /var/lib [safe_mysqld] err-log = /var/log/mysqld.log pid-file = /var/run/mysqld/mysqld.pid
در این بخش شما یک دایرکتوری متفاوت برای فایل گزارش خطا تعیین میکنید، چون در غیر این صورت نمیتوانید هیچ مدخلی را در این جدول تغییر دهید.
دستورات مدیریت MySQL
در ادامه فهرستی از دستورهای مهم MySQL که در موارد مختلف هنگام کار با پایگاه داده MySQL استفاده میکنیم را ارائه کردهایم:
- USE Databasename – این دستور برای انتخاب یک پایگاه داده در محیط کاری MySQL استفاده میشود.
- SHOW DATABASES – فهرستی از پایگاههای دادهای که در سیستم مدیریت پایگاه داده MySQL وجود دارد ارائه میکند.
- SHOW TABLES – جدولهایی که در پایگاه داده وجود دارد را پس از انتخاب پایگاه داده با دستور USE نشان میدهد.
- SHOW COLUMNS FROM tablename – خصوصیات، نوع خصوصیات، اطلاعات کلیدی، مجاز بودن مقادیر NULL، مقادیر پیشفرض، و اطلاعات دیگر را در مورد یک جدول نشان میدهد.
- SHOW INDEX FROM tablename – جزییات همه اندیسهای روی جدول، شامل PRIMARY KEY را نشان میدهد.
- SHOW TABLE STATUS LIKE tablename\G – جزییاتی در مورد عملکرد و آمار سیستم مدیریت پایگاه داده MySQL ارائه میدهد.
بدین ترتیب به پایان این نوشته با موضوع مدیریت پایگاه داده MySQL میرسیم. در بخش بعدی به بررسی روش استفاده از ساختارهای PHP در MySQL میپردازیم.
اگر این نوشته مورد توجه شما قرار گرفته است، پیشنهاد میکنیم موارد زیر را نیز ملاحظه کنید:
- معرفی زبان SQL — راهنمای جامع
- عبارت های ORDER BY و TOP در SQL
- پایگاه داده و سیستم های مدیریت اطلاعات
- تزریق SQL پیشرفته — انگشتنگاری پایگاه داده و شناسایی عمومی برای اجرای حملهای مؤثرتر
- ابزارهای مهندسی کامپیوتر
- عبارت Join و انواع مختلف آن در SQL
==