MySQL database

MySQL คืออะไร? และ ไว้ทำอะไร?

หลังจากทำความเข้าใจกับ LAMP กันไปแล้ว รวมถึงเรื่อง Linux และ Apache ที่นี้ตัวต่อไปก็ คือ MySQL  คือ อะไร และทำหน้าที่อะไร

SQL

MySQL คือ open source  ถูกคิดค้นโดย MySQL AB ในสวีเดน และต่อมาถูก takeover โดย Sun Microsystems ในปี  2008 และก็ควบรวมกับ Oracle ในปี 2010  มี function การทำงานแบบ relation database management system (RDBMS) โดยอาศัย Structured Query Language (SQL) เป็นภาษาในสื่อสาร โดยเจ้าตัว MySQL นี้สามารถรันได้ทั้งบน Linux, UNIX  และ Windows ซึ่งด้วยความหลากหลายของมันแล้ว แต่คนก็ยังคงใช้แต่กับงาน web-based ซะส่วนใหญ่ เพราะฉะนั้นจึงได้มีการออกแบบเจ้าตัว MySQL ให้เป็นส่วนหนึ่งในระบบ open source enterprise stack หรือที่เราเรียกว่า ” LAMP”

ก่อนที่จะไปลงลึกในรายละเอียด สงสัยกันไหมว่า และ database มันมีกี่แบบหละ

Database

ปัจจุบันมีการใช้งานหลักๆอยู่ 2 แบบ ตือ

1.  Relational database  หรือ ระบบฐานข้อมูลเชิงสัมพันธ์ เป็นการเก็บข้อมูลในรูปของตาราง (table) ในแต่ละตารางแบ่งออกเป็นแถวๆ และในแต่ละแถวจะแบ่งเป็นคอลัมน์ (Column) ซึ่งในการเชื่อมโยงกันระหว่างข้อมูลในตารางต่างๆ จะ เชื่อมโยงโดยใช้การอ้างอิงจากข้อมูลในคอลัมน์ที่กำหนดไว้ อาศัย RDBMS tools ในการควบคุม

2.  LDAP database  หรือ Lightweight Diretory Access Protocol  ทำงานโดยอาศัย Active Directory (AD) เป็นไดเรกทอรี่เซอร์วิสในระดับองค์กร ที่ถูกออกแบบบนมาตรฐานของ Internet Technology เอาไว้รองรับการค้นหาทรัพยากรต่าง ๆ  บนเครือข่ายขนาดใหญ่ และยังช่วย Admin จัดการบริหารเครือข่ายที่ซับซ้อนจากศูนย์กลางได้อย่างสะดวก AD เป็นการทำงานร่วมกันระหว่าง DNS (Domain Naming System) และ LDAP (Lightweight Diretory Access Protocol) ทำให้สามารถจะติดต่อเชื่อมโยง (interoperability) กับไดเรกทอรี่เซอร์วิสอื่นๆ ได้อีกด้วย และมีการพัฒนา DCOM (Distributed Component Object Model) ให้มีประสิทธิภาพในการกระจายแอพพลิเคชั่นได้ดียิ่งขึ้น AD จะมีโครงสร้างอยู่ 2 แบบคือ ทางกายภาพ (Physical Structure) และทางลอจิคอล (Logical Structure)

Install MySQL

บน Ubuntu repository จะเก็บไว้ในชื่อ mysql-server  เราสามารถ เปิด console หรือ SSH เข้าไป run command ด้านล่างเพื่อ install

$ sudo apt-get update

$ sudo apt-get install mysql-server

$ sudo mysql_secure_installation

Step 1 — Installing MySQL

Install ผ่านทาง apt-get

$ sudo apt-get update

$ sudo apt-get install mysql-server

Step 2 — Configuring MySQL

เพิ่ม security ให้กับ MySQL  โดย run command ด้านล่าง และตอบ “Y” จากนั้น Enter

$ sudo mysql_secure_installation

Step 3 — Testing MySQL

ทำการ start MySQL ด้วยคำสังด้างล่าง เพื่อตรวจสอบ status ที่ได้

$ systemctl status mysql.service

● mysql.service - MySQL Community Server
   Loaded: loaded (/lib/systemd/system/mysql.service; enabled; vendor preset: en
   Active: active (running) since Wed 2016-11-23 21:21:25 UTC; 30min ago
 Main PID: 3754 (mysqld)
    Tasks: 28
   Memory: 142.3M
      CPU: 1.994s
   CGroup: /system.slice/mysql.service
           └─3754 /usr/sbin/mysqld

ถ้าไม่สามารถ run command ด้านบนได้  ให้ลองใช้

$ sudo systemctl mysql start

จากนั้นลองตรวจสอบ status หลังจาก start เรียบร้อยแล้ว

$ mysqladmin -p -u root version

mysqladmin  Ver 8.42 Distrib 5.7.16, for Linux on x86_64
Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Server version      5.7.16-0ubuntu0.16.04.1
Protocol version    10
Connection      Localhost via UNIX socket
UNIX socket     /var/run/mysqld/mysqld.sock
Uptime:         30 min 54 sec

Threads: 1  Questions: 12  Slow queries: 0  Opens: 115  Flush tables: 1  Open tables: 34  Queries per second avg: 0.006

 

Author: Suphakit Annoppornchai

Credit: https://saixiii.com,https://www.digitalocean.com

28 Thoughts to “MySQL คืออะไร MySQL คือ โปรแกรมฐานข้อมูล database เป็นส่วนหนึ่งใน LAMP”

  1. […] ปัจจุบันมี production database ให้เราเลือกใช้อยู่มากมาย เช่น Microsoft SQL Server, Oracle Database, IBM DB2 และ MySQL ที่เป็นที่นิยมกันในระดับองกรค์ […]

  2. […] ครบหมดแล้ว ซึ่งจะเห็นว่าการใช้งาน MySQL ที่เรามีอยู่จำเป็นต้องใช้ command line SQL […]

  3. […] Sun Microsystems Inc. ในปี 2010 ซึ่งรวมถึงยึดเอา MySQL database  มาด้วย ทั้งๆที่เป็น open source relational database […]

  4. […] server ซึ่งได้แก่ Apache, MySQL และ PhpMyAdmin หรือก็คือ LAMP […]

  5. […] database ตัวอย่างเช่น ติดตั้ง MySQL แล้ว การจะเริ่มใช้งานอย่างไร […]

  6. […] จากบทความที่แล้วเรื่อง SQL UNION Clause เป็นการเอาข้อมูล 2 table มารวมกันทั้งหมด ทีนี้เรามาดูว่าถ้าจะเลือกเอาเฉพาะข้อมูลบรรทัดที่มีเหมือนกันเท่านั้นใน 2 table จะใช้ SQL INTERSECT Clause แทน ซึ่ง database บางชนิดอาจจะไม่รองรับ SQL INTERSECT เช่น MySQL […]

Leave a Reply