[เกร็ดความรู้] การติดตั้ง MySQL Server บน Amazon Linux 2023

เราสามารถติดตั้ง MySQL 8 ใน Amazon Linux 2023 โดยใช้แพ็คเกจ RHEL9 ได้ ทางเราจะมาแนะนำวิธีดังกล่าวในบทความนี้

บทความนี้แปลมาจากบทความที่เป็นภาษาญี่ปุ่นที่ชื่อว่า [小ネタ]Amazon Linux 2023にMySQL Clientをインストールする โดยเจ้าของบทความนี้คือ คุณ akky เป็นคนญี่ปุ่นครับ

เมื่อแปลจากภาษาญี่ปุ่นมาเป็นภาษาไทยแล้วผมได้เรียบเรียงเนื้อหาใหม่เพื่อให้เข้าใจง่ายขึ้น เนื่องจากบางครั้งอาจมีการอัปเดตข้อมูลใหม่ จึงมีความจำเป็นต้องอัปเดตให้เป็นข้อมูลปัจจุบัน


เนื่องจาก Amazon Linux 2023 (AL2023) เปิดตัวมา ผมจึงต้องการอัปเดต OS ของ Instance ที่ใช้สำหรับจัดการ MySQL แน่นอนว่าไม่สามารถทำขั้นตอนเดียวกับ Amazon Linux 2 ได้ ครั้งนี้ผมจึงได้ลองศึกษาวิธีการติดตั้ง MySQL บน AL2023 มาแล้ว และจะมาแนะนำในบทความนี้ครับ

หากสนใจวิธีการติดตั้ง MariaDB บน Amazon Linux 2 ดูรายละเอียดได้ที่ลิงก์ด้านล่างนี้

ติดตั้ง MySQL Client

สามารถติดตั้งด้วยคำสั่งต่อไปนี้ (ไม่มีการสนับสนุนจาก AWS)

dnf -y localinstall https://dev.mysql.com/get/mysql80-community-release-el9-4.noarch.rpm
dnf -y install mysql mysql-community-client


นอกจากนี้ยังสามารถใช้ MariaDB ที่มีอยู่ใน Standard repository ได้ หากต้องการใช้ MariaDB ดูรายละเอียดได้ที่ลิงก์ด้านล่างนี้

ติดตั้ง MySQL Server

รันคำสั่งต่อไปนี้เพื่อติดตั้ง MySQL Server

ติดตั้ง MySQL Server

dnf -y install mysql mysql-community-server


เริ่มต้นระบบ MySQL Server

systemctl start mysqld


ตั้งค่าเปิดใช้งาน MySQL Server เพื่อเริ่มต้นระบบ MySQL Server ในตอนที่รีสตาร์ท Linux

systemctl enable mysqld


ค้นหารหัสผ่าน

less /var/log/mysqld.log

Output (example): ส่วนนี้คือรหัสผ่าน

Session ID: role_name-xxxxxxxxxx  Instance ID: i-xxxxxxxxxx

[Server] A temporary password is generated for root@localhost: **********


เชื่อมต่อ MySQL

mysql -u root -p'[password]' -h localhost


เปลี่ยนรหัสผ่านที่ต้องการ

SET PASSWORD = 'Passw@rd1234';


ลองเชื่อมต่อ MySQL ด้วยรหัสผ่านใหม่อีกครั้ง

mysql -u root -p'[new_password]' -h localhost


จะเห็นว่าสามารถจัดการสิ่งต่างๆ ตามที่เราต้องการได้ครับ

show databases;

Output (example)

Session ID: role_name-xxxxxxxxxx  Instance ID: i-xxxxxxxxxx

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.01 sec)

mysql>


ผมหวังว่าบทความนี้จะเป็นประโยชน์ให้กับผู้อ่านได้นะครับ

บทความต้นฉบับ

แปลโดย: POP จากบริษัท Classmethod (Thailand)

บทความที่เกี่ยวข้อง