اگر شما مسئول مدیریت سرور database هستید، شما ممکن است بعضی اوقات احتیاج داشته باشید که یک query را اجرا کنید و نتیجه آن را به دقت بررسی کنید. شما میتوانید از طریق شل MySQL / MariaDB این کار را انجام دهید اما با این ترفند شما میتوانید Querie هایی که درون شل MySQL/MariaDB میزنیم را به صورت مستقیم در shell خود linux اجرا کنیم و خروجی دستورات را هم در یک فایل ذخیره کنیم که هر موقع خواستیم آن فایل را چک کنیم. (این آموزش مخصوصا برای کسانی که با تعداد query های زیادی درگیر هستند خیلی مفید است.)
قبل از اینکه به سمت query های پیشرفته تر برویم، اجازه دهید که ما نگاهی به بعضی مثال های ساده، که querie ها را به صورت مستقیم در command line اجرا کرده ایم، بیندازیم.
برای مشاهده تمام دیتابیس های روی سرورتان، شما میتونید از کامند زیر استفاده کنید :
سپس برای ساخت یک table به نام tutorials در دیتابیس linuxzonedb کامند زیر را اجرا کنید :
پیشنهاد میشود این مقاله خوانده شود :
آموزش دستورات پایه ای MySQL - بخش 1
ما از دستور زير استفاده خواهيم كرد و خروجي آنرا به دستور tee - پايپ (pipe) ميكنيم و نام فايلي كه ميخواهيم خروجي را در آن ذخيره كنيم بهمراه دستور tee مي آيد.
بعنوان مثال در اینجا ما میخوایم از یک دیتابیس به نام employees استفاده کنیم و تیبل salaries را به person_info ارتباط بدیم. در داخل سرور خودتان SQL query که میخواید را فقط بین quotes (دابل کوتیشن) تایپ کنید و Enter را بزنید.
نکته : بعد از وارد کردن دستور از شما میخواد که پسورد یوزر دیتابیس تان رو وارد کنید :
با استفاده از دستور cat نتایج query ها را مشاهده کنید.
با دخیره نتایج query ها در یک فایل متنی، شما میتوانید نتیجه آنرا را با استفاده از دیگر ابزارهای command line به آسانی مورد پردازش و بررسی قرار دهید.
قبل از اینکه به سمت query های پیشرفته تر برویم، اجازه دهید که ما نگاهی به بعضی مثال های ساده، که querie ها را به صورت مستقیم در command line اجرا کرده ایم، بیندازیم.
برای مشاهده تمام دیتابیس های روی سرورتان، شما میتونید از کامند زیر استفاده کنید :
کد PHP:
# mysql -u root -p -e "show databases;"
کد PHP:
# mysql -u root -p -e "USE linuxzonedb; CREATE TABLE tutorials(tut_id INT NOT NULL AUTO_INCREMENT, tut_title VARCHAR(100) NOT NULL, tut_author VARCHAR(40) NOT NULL, submissoin_date DATE, PRIMARY KEY (tut_id));"
پیشنهاد میشود این مقاله خوانده شود :
آموزش دستورات پایه ای MySQL - بخش 1
ما از دستور زير استفاده خواهيم كرد و خروجي آنرا به دستور tee - پايپ (pipe) ميكنيم و نام فايلي كه ميخواهيم خروجي را در آن ذخيره كنيم بهمراه دستور tee مي آيد.
بعنوان مثال در اینجا ما میخوایم از یک دیتابیس به نام employees استفاده کنیم و تیبل salaries را به person_info ارتباط بدیم. در داخل سرور خودتان SQL query که میخواید را فقط بین quotes (دابل کوتیشن) تایپ کنید و Enter را بزنید.
نکته : بعد از وارد کردن دستور از شما میخواد که پسورد یوزر دیتابیس تان رو وارد کنید :
کد PHP:
# mysql -u root -p -e "USE employees; SELECT DISTINCT p.first_name, p.last_name, s.value FROM person_info p JOIN salaries s ON p.id = s.person_id WHERE hire_date < '1990-01-31';" | tee queryresults.txt
Enter password:
first_name last_name value
mohammad habili 500
hamid barani 700
shahrooz jafari 200
shahab ghalamdost 350
کد PHP:
# cat queryresults.txt
first_name last_name value
mohammad habili 500
hamid barani 700
shahrooz jafari 200
shahab ghalamdost 350