[Proxmox7] มาลอง AlmaLinux9.5 กับ Mariadb11.4.4 กันครับ
มาทดสอบกับครับระหว่าง AlmaLinux9.5 พร้อมกับ Mariadb11.4.4 ว่าจะแรงขนาดไหนนะครับ
– เตรียมพร้อมกันก่อนเลย
– https://almalinux.org/get-almalinux/ ไปดาวโหลด iso มาก่อนครับ
– Proxmox 7.0 หรือ สูงกว่าก็ได้
อัพโหลดไฟล์ขึ้นไปเก็บไว้ใน local ก่อน
– สร้าง VM ใหม่ขึ้นมา (ในที่นี้ผมจะเอาไว้เป็นฐานสำรอง hosxp_slave นะครับ )
– ชื่อ AlmaLinux9x5-Backup
– เลือกไฟล์ iso image
– เลือกค่า Default
– Disk Size 612 GiB ( แล้วแต่เราจะกำหนดเลยครับ ไม่จำกัด)
– เลือก SSD emulation = true (กรณี Hard disk เราเป็น SSD นะ)
– กำหนด Type = host
– Cores = 2 ( ต้องดูว่า server เรามี CPU กี่ Core กำหนดตามที่เรามีจำกัดนะครับ )
– Ram = 8192 Mib = 8 Gib
( แล้วแต่จะกำหนดนะ ขึ้นอยู่กับ server เรามีแรมอยู่เท่าไหร่ )
– เสร็จแล้ว ก็ ติ๊ก Start after created ได้เลย
– เข้าหน้า console ได้เลย
– เลือก Install AlmaLinux 9.5 แล้วกด enter
– รอๆๆ
– กด Continue ได้เลย ปกติผมเลือกเป็นภาษา English
– เลือก Region = Asia
– เลือก City = Bangkok
– เลือก Server with GUI หรือถ้าท่านไหนต้องการใช้ Text Mode ก็เลือก Server ก็ได้ เพื่อประหยัดแรมได้อีก 1 Gib
– ถ้าเลือก GUI ก็ต้องมาเลือก Graphical Administration Tools + System Tools ด้วยนะ จะได้ใช้เมาส์คลิกได้ง่าย
– จริงๆ ก็ติดตั้งเหมือน Centos 8 ที่ผมเคยได้เขียนอธิบายไว้ก่อนหน้านี้ เข้าไปค้นหาดูได้ครับ…..
– กำหนด IP Ethernet แบบ IPv4 ตามต้องการเลยครับ
– กำหนดชื่อ Host Name = AlmaLinux9-backup.local
– ข้ามมากำหนด Partition กัน ปกติผมก็กำหนดแบบ automatically เลย แต่มาปรับ path ภายในเอาอีกที
– ปกติเราเน้นเก็บข้อมูลไว้ในเฉพาะฐานข้อมูล Mariadb ดังนั้นเราจะไม่แบ่ง partition เยอะนะ จะมีแค่หลักๆ พอคือ
/home = 3 Gib
/boot = ตามค่า default
ที่เหลือเราจะเอาไปให้ / ทั้งหมด โดยเราจะกำหนดค่าใช้ช่อง Desired Capacity แล้วกด Update Settings นะครับ
– กำหนดเสร็จแล้วกดปุ่ม Done แล้วจะมีหน้าจอ สรุป เราก็กดปุ่ม Aceept Changes ได้เลย
– กำหนด Root Password กับ User Creation เองเลยนะ ผมจะข้ามไป Begin Installation เลย
– รอจนกว่าจะเสร็จ
– กลับไปดู Summary ภาพรวมของ Proxmox เราว่าใช้ไปกี่เปอร์เซ็นแล้ว โอเค พอรับได้ครับ
– อะเสร็จแล้วกดปุ่ม Reboot System เลย
– เข้าระบบได้เลย (ปล. แนะนำให้ใช้ user ที่เราสร้างเพิ่มนะ ไม่แน่นำให้ใช้ root หรือจะให้ดี ปิดการใช้งาน root ไว้เลย ไม่ให้ login เป็น root ตั้งแต่เริ่มใช้งาน ให้เราใช้ su root เอาภายหลังจาก เข้าระบบได้แล้วโดย user ที่เราสร้างเพิ่มเอานะ ทำให้เป็นนิสัยของ Admin มืออาชีพ )
– เลือก Terminal
– แล้วค่อยเข้า user root ด้วยคำสั่ง su root นะครับ เพื่อ install mariadb เอาอีกที
– ต่อมาเราจะอัพโหลดไฟล์ my.cnf เข้าไปใน server โดยใช้ WinSCP นะครับ
– อ้อมีไฟล์ my.cnf สำหรับ Mariadb 11.4.4 มาฝากครับ
*** my.zip for Mariadb11.4.4 ***
***
my.zip for Mariadb11.4.4 (28 downloads )
***
– เอาไว้เก็บไว้ที่ “/home/admin/Downloads/” ตามรูปเลย
– เข้า putty เพื่อสะดวกในการ copy วางข้อความคำสั่งนะ เพราะใช้หน้า console หน้าจอ proxmox มันทำไม่ได้ ผมเลยต้องรันคำสั่งผ่าน putty เอาสะดวกกว่า
– ต่อมาเราจะสร้างไฟล์ repo สำหรับเอาไว้ yum install mariadb ได้เลย (ต่อเน็ตด้วยนะ )
– เตรียมคำสั่งที่สามารถ copy ไปวางเพื่อรันคำสั่งนี้ได้เลย
– ดาวโหลดไฟล์ txt 2567 set yum mariadb 11.4.txt
***
2567 set yum mariadb 11.4.txt (26 downloads )
***
– copy วางใน putty ได้เลย หรือท่านสะดวกพิมพ์ที่ละตัวก็ได้นะ
– วางแล้วกด enter ได้เลย ระบบจะรันคำสั่งให้เอง และสร้างไฟล์ mariadb.repo ให้เอง พร้อมสำหรับ yum makecache ได้แล้ว ไปขั้นตอนต่อไป
– ตรวจสอบไฟล์ repo ดูภายในจะมีตามรูปนี้ ถ้าใครไม่มี กลับไปทำใหม่นะ
– ทำการ ตรวจสอบไฟล์ my.cnf ที่เราได้อัพโหลดเข้าไปไว้ใน /home/admin/Downloads ว่ามีไหม ถ้าไม่มีก็กลับไปอ่านด้านบนใหม่นะครับ
– ทำการ copy ไฟล์ my.cnf ไปวางไว้ที่ /etc/ ตามรูป
– ทำการแก้ไขไฟล์ my.cnf ตามที่เราต้องการเลยครับ
– ปกติผมจะปรับแค่ innodb_buffer_pool_size = 4G (เพราะใน server ผมมีแรมแค่ 8 G) ถ้าท่านไหนมีแรมเยอะๆ ก็กำหนด 60 – 80% ของแรมทั้งหมดที่ท่านมีนะครับ
– อีกตัว ผมจะแก้ไข expire_logs_days = 3 (กรณีเปิดใช้งาน binlog เพื่อไว้ให้ระบบรัน replicate ได้ ทำให้ต้องสร้างไฟล์ log-bin ขึ้นแต่เราสามารถกำหนดได้ว่าให้ระบบมันลบไฟล์ให้ทุกๆ 3 วัน ถ้าท่านไหนไม่ต้องการเปิดใช้งาน log-bin ก็ได้ปิดได้เลยนะครับ )
– ทำการสั่ง yum install mariadb mariadb-server ( ใช้กรณี ต่อ internet นะครับ ถ้าไม่ได้ต่อ จะใช้วิธี yum install ผ่านไฟล์ iso ก็ได้นะผมได้เขียนวิธีใช้อยู่ สามารถทำตามได้เช่นกัน …. ค้นหาดูนะ…)
– กด y เพื่อติดตั้ง mariadb11.4.4
–
– กด y
– ถ้าขึ้น Complate! แสดงว่าเสร็จแล้วนะครับ
– ต่อมาเราจะ config server เพื่อให้รองรับการเขียนอ่านไฟล์ mysql ได้มากกว่าค่า default ที่ server ตอนลงครั้งแรก
– แก้ไขไฟล์ /etc/selinux/config
– ปิด selinux = disabled
– แก้ไขไฟล์ /etc/security/limits.conf
– กำหนดตามรูปได้เลย ปกติผมใช้แค่ 50000 ก็พอครับ
– แก้ไขไฟล์ /etc/local เพิ่ม ulimit -n 50000 ด้วยนะครับ
– ต่อมาก็เปิด port = 3306 ให้ด้วยนะเพื่อให้เครื่อง client เข้าใช้งานได้ผ่าน lan
– สร้าง start mariadb ได้เลย
– systemctl start mariadb
– ตรวจสอบด้วยนะว่า mariadb ทำงานหรือยัง
systemctl status mariadb
– อย่าลืมกำหนดให้ mariadb ทำงานตอนเปิดเครื่องใหม่ด้วย (กรณี reboot ระบบจะสั่งรัน mariadb ให้ด้วย)
systemctl enable mariadb
– เพื่อทดสอบว่า mariadb จะทำงานตอนเปิดเครื่องจริงหรือไม่ ก็สั่ง reboot ได้เลย
– รอจน reboot เสร็จ
– โอเค mariadb รันได้ตอนเปิดเครื่องแล้ว
– ต่อมาเมื่อเข้า เราจะสั่ง mysql_secure_installation แต่ใน mariadb11.4.4 จะไม่มีแล้วนะ ต้องเปลี่ยนเป็น
mariadb-secure-installation
มีการเปลี่ยนแปลง อ่านรายละเอียดได้ที่เว็บนี้นะครับ https://mariadb.com/kb/en/mariadb-secure-installation/
– เมื่อรัน mariadb-secure-installation แล้วจะมี prompt ให้เรา input ต่อท้าย cusor นะครับตามรูปเลย
– ถ้ายังไม่ได้กำหนด ก็กด enter ข้ามไปได้เลย
– Switch to unux_socket authentication [Y/n] = y
– Chang to root password? [Y/n] = y
กำหนดให้ใส่รหัสผ่านของ root
– กำหนดรหัสผ่านของ root ให้ตรงกับทั้ง 2 ครั้งนะครับ แล้วจะผ่านไป เพื่อลบ anonymous user นี้ออกด้วย
Remote anonymous users? [Y/n] = y
– ปิด user root กรณีมีการ remote จากเครื่อง client
Disallow root login remotely? [Y/n] = y
– ลบฐาน test ออกหรือไม่ ปกติก็ลบออกครับ
Remove test database and access to it? [Y/n] = y
– ทำการ Reload privilage tables now = y
– ถ้าขึ้น Thanks for using MariaDB! แสดงว่าเสร็จแล้วนะครับ พร้อมใช้งานละ
– ต่อๆ
– กลับไปใช้หน้าจอ console ใน proxmox แทนครับ เพราะไม่ต้อง copy คำสั่งไปวางแล้ว
– สั่ง mysql_upgrade –force (เพื่อทำการตรวจสอบฐานข้อมูล กรณีถ้าเราใช้งานไปนานๆ ปกติจะทำทุกๆ ปี เพื่อให้ตรวจสอบและเครีย cache ด้วย)
– ถ้าขึ้น ok แสดงว่าฐานเราปกติดีครับ
–
– เข้าฐาน mariadb เพื่อไป grant สิทธิและสร้างฐานเปล่า ครับ
– รันคำสั่งสร้าง user ขึ้นมาครับ
grant all on *.* to user@’%’ identified by ‘password’ with grant option;
flush privileges;
แล้วสร้างฐานเปล่าชื่อ hos_slave ต่อครับ
create database hos_slave default character set tis620;
– ตรวจสอบ Ram และตรวจสอบพื้นที่ใน partitions ที่เราใช้ไปตอนนี้มีเท่าไหร่
– ทดสอบโอนข้อมูลจากฐาน hos ตัวหลัก ไปยังฐาน hos_slave กันครับ
– ดู top แล้วเรียงลำดับ memory ดูครับว่าใช้ไปกี่เปอร์เซ็น
– เท่าที่ทดสอบผมก็คิดว่าเร็วใช้ได้เลยครับ รัน replicate ก็เร็วใช้ได้ครับ (ความเห็นส่วนตัวนะ)
– ขอบคุณคำแนะนำจาก IT รพร.จอมบึง มาด้วยนะครับ สำหรับผู้ทดสอบ MariaDB11.4.4 นี้มาก่อนผม ผมก็ทดสอบตามครับ ได้ผลที่น่าพอใจครับ
– ทดสอบเปิดหน้าจอบัญชี 1 ก็เร็วกว่า MariaDB10.3 มากครับ ประมาณ 1 – 2 วิ ก็แสดงข้อมูลเลย
– ถ้ามีอะไรเพิ่มจะเอามาเรียบเรียงให้อ่านกันอีกทีนะ เอาเท่านี้ก่อน จริงๆต้องใช้งานไปสักพัก ถึงจะสรุปได้ว่าเร็วขึ้นขนาดไหนนะครับ
– ขอบคุณที่ติดตาม แล้วพบกันใหม่ครับ
ขอบคุณ อ.ครับนำมาถ่ายทอดได้ดี เข้าใจง่ายดีครับ
ตอนนี้ผมใช้ 11.4.4 เป็น Master ทำ mysql replication ไปที่ Slave 2 เครื่อง ใช้ 11.4.4 ทั้งคู่ master ทำงานปกติ ไม่มีปัญหาครับ ส่วนเครื่อง Slave ก็ได้รับข้อมูลครบถ้วนไม่มีตกหล่น เมื่อก่อนไม่กล้าทำกลัว Server หน่วง ตอนนี้ใช้มา เกินเดือนระบบยังทำงานราบรื่นดีครับ server ram แค่ 64Gb ครับก็ไหวสบายๆๆครับ การใช้ ram อยู่ที่ 67%
ขอบคุณมากครับ
ทำ slave สองเครื่องนี้ มีวิธีทำอย่างไร หรือครับ
ขอบคุณอาจารย์มากเลยครับ
ขอบคุณครับ จารย์