Neor Profile SQL โปรแกรมตรวจสอบการทำงานของ MySQL
โปรแกรม Neor Profile SQL เป็นโปรแกรมที่ผมชื่นชอบอีกโปรแกรมหนึ่ง โดยเป็นโปรแกรมที่ไว้ใช้ตรวจสอบการทำงานของ MySQL ว่ามี Query อะไรทำงานบ้าง รวมถึงประสิทธิภาพของ Query นั้นๆ ว่าสามารถทำงานได้เร็วแค่ไหน ซึ่งถ้าอ่านผลของมันเป็น เราสามารถใช้ผลนั้นนำมาปรับปรุงประสิทธิภาพของ Query ให้ดีขึ้นได้
การทำงานของ Neor Profile SQL รูปภาพนี้มาจาก http://www.profilesql.com/ ซึ่งเป็นผู้สร้างโปรแกรมนี้ ใช้ในการอธิบายการทำงานของโปรแกรม โดยที่ Neor Profile SQL จะเป็นตัวกลางคั่นระหว่าง Server และ Application โดยที่โปรแกรมจะติดต่อกับ MySQL Server ผ่านพอร์ต 3306 ซึ่งเป็นพอร์ตปกติของ MySQL และ Application จะติดต่อกับ MySQL ผ่าน Neor Profile SQL ที่พอร์ต 4040 แทน
โปรแกรม Neor Profile SQL สามารถทำงานได้ทั้งบน Windows Linux และ Mac OS X เลยนะครับโดยที่เวอร์ชั่นล่าสุดตอนที่เขียนบทความนี้คือ 4.1 ซี่งสามารถดาวน์โหลดโปรแกรมได้ที่ http://www.profilesql.com/download/ และโปรแกรมนี้เป็น Freeware นะครับ
แต่จากการดาวน์โหลดเวอร์ชั่นล่าสุดมาลองใช้ (บน Ubuntu 16.04) ผมพบว่ามันไม่สามารถเชื่อมต่อกับ Database ได้ และจากการสอบถามไปยังผู้เขียนโปรแกรม ผู้เขียนแจ้งว่าโปรแกรมไม่รองรับการใช้งาน MySQL เวอร์ชั่น 5.7 และจากการทดสอบผมก็ยังไม่สามารถใช้งานได้ทั้งบน MySQL 5.6 และ 5.5 เช่นกัน
จริงๆ ผมเคยใช้โปรแกรมนี้บน Ubuntu มาก่อนแล้วเลยมั่นใจว่ามันน่าจะทำงานได้แน่ๆ ผมเลยพยายามลองหาเวอร์ชั่นเก่าๆของ Neor Profile SQL มาใช้ ซึ่งผมพบว่าเวอร์ชั่น 3.0.6 สามารถใช้งานได้ครับ
ดาวน์โหลด
1.ก่อนอื่นก็ Start โปรแกรมขึ้นมาก่อน ตั้งค่าตามรูป และอย่าลืมกรอก username และ password ของ MySQL ที่ใช้งานอยู่ไปด้วยนะครับ 2.แก้ไขการตั้งค่าของ Application ให้เชื่อมต่อกับฐานข้อมูลที่พอร์ต 4040 แทน และ host ให้ใช้ 127.0.0.1 ตัวอย่าง
PDO :
MySQLi :
Kotchasan :
เสร็จแล้วลองรันแอพพลิเคชั่นดูนะครับ ผลการทดสอบสามารถดูได้ที่แถบ Session โดยคลิกที่แต่ละ Session จะแสดงข้อมูลการ Query ในแต่ละ Session สามารถนำผลลัพท์ไปปรับปรุง Query ได้
การทำงานของ Neor Profile SQL รูปภาพนี้มาจาก http://www.profilesql.com/ ซึ่งเป็นผู้สร้างโปรแกรมนี้ ใช้ในการอธิบายการทำงานของโปรแกรม โดยที่ Neor Profile SQL จะเป็นตัวกลางคั่นระหว่าง Server และ Application โดยที่โปรแกรมจะติดต่อกับ MySQL Server ผ่านพอร์ต 3306 ซึ่งเป็นพอร์ตปกติของ MySQL และ Application จะติดต่อกับ MySQL ผ่าน Neor Profile SQL ที่พอร์ต 4040 แทน
โปรแกรม Neor Profile SQL สามารถทำงานได้ทั้งบน Windows Linux และ Mac OS X เลยนะครับโดยที่เวอร์ชั่นล่าสุดตอนที่เขียนบทความนี้คือ 4.1 ซี่งสามารถดาวน์โหลดโปรแกรมได้ที่ http://www.profilesql.com/download/ และโปรแกรมนี้เป็น Freeware นะครับ
แต่จากการดาวน์โหลดเวอร์ชั่นล่าสุดมาลองใช้ (บน Ubuntu 16.04) ผมพบว่ามันไม่สามารถเชื่อมต่อกับ Database ได้ และจากการสอบถามไปยังผู้เขียนโปรแกรม ผู้เขียนแจ้งว่าโปรแกรมไม่รองรับการใช้งาน MySQL เวอร์ชั่น 5.7 และจากการทดสอบผมก็ยังไม่สามารถใช้งานได้ทั้งบน MySQL 5.6 และ 5.5 เช่นกัน
จริงๆ ผมเคยใช้โปรแกรมนี้บน Ubuntu มาก่อนแล้วเลยมั่นใจว่ามันน่าจะทำงานได้แน่ๆ ผมเลยพยายามลองหาเวอร์ชั่นเก่าๆของ Neor Profile SQL มาใช้ ซึ่งผมพบว่าเวอร์ชั่น 3.0.6 สามารถใช้งานได้ครับ
ดาวน์โหลด
- Windows (Windows XP and newer) sqlprofiler-3.0.6.exe
- Mac OS X (Mac OS X 10.7 and newer) sqlprofiler-3.0.6.dmg
- Linux 32 bit (Debian 6, Ubuntu 11 and newer) sqlprofiler-3.0.6-i386.deb
- Linux 64 bit (Debian 6, Ubuntu 11 and newer) sqlprofiler-3.0.6-amd64.deb
1.ก่อนอื่นก็ Start โปรแกรมขึ้นมาก่อน ตั้งค่าตามรูป และอย่าลืมกรอก username และ password ของ MySQL ที่ใช้งานอยู่ไปด้วยนะครับ 2.แก้ไขการตั้งค่าของ Application ให้เชื่อมต่อกับฐานข้อมูลที่พอร์ต 4040 แทน และ host ให้ใช้ 127.0.0.1 ตัวอย่าง
PDO :
$dsn = 'mysql:dbname=database_name;host=127.0.0.1;port=4040';
MySQLi :
$conn = mysqli_connect('127.0.0.1:4040', 'database_name', 'password');
Kotchasan :
<?php
/* database.php */
return array(
'mysql' =>
array(
'dbdriver' => 'mysql',
'username' => 'root',
'password' => 'password',
'dbname' => 'database_name',
'hostname' => '127.0.0.1',
'port' => 4040
),
เสร็จแล้วลองรันแอพพลิเคชั่นดูนะครับ ผลการทดสอบสามารถดูได้ที่แถบ Session โดยคลิกที่แต่ละ Session จะแสดงข้อมูลการ Query ในแต่ละ Session สามารถนำผลลัพท์ไปปรับปรุง Query ได้