FiveM MySQL Connection Error แก้อย่างไร? เชื่อม Database ไม่ได้ Access Denied, Connection Refused และ Unknown Database

 ปัญหา FiveM เชื่อม MySQL หรือ MariaDB ไม่ได้ เป็นหนึ่งใน Error ฝั่ง Server ที่ทำให้ระบบสำคัญแทบทั้งหมดใช้งานไม่ได้ ไม่ว่าจะเป็น Character, Inventory, Banking, Vehicles, Housing หรือ Jobs เพราะข้อมูลเหล่านี้มักถูกเก็บอยู่ใน Database

ตัวอย่าง Error ที่ Server Owner อาจพบ เช่น:

Access denied for user
Connection refused
Unknown database
Can't connect to MySQL server
connect ECONNREFUSED
ETIMEDOUT

หรือ Resource ฐานข้อมูล เช่น oxmysql เชื่อมต่อไม่สำเร็จตั้งแต่ตอน FiveM Server เริ่มทำงาน

สิ่งสำคัญคือ Error แต่ละข้อความมีสาเหตุไม่เหมือนกัน ดังนั้นไม่ควรแก้ด้วยการเปลี่ยน Password, Port, Firewall และติดตั้ง Database ใหม่พร้อมกันทั้งหมด เพราะจะยิ่งหาต้นเหตุยาก

แนวทางที่ถูกต้องคือ:

อ่านข้อความ Error → แยกประเภท → ตรวจ Connection String → ตรวจ Database Service → ตรวจ User Permission → ตรวจ Network → ทดสอบใหม่

① FiveM MySQL Connection Error คืออะไร

คือ FiveM Resource ไม่สามารถสร้าง Connection ไปยัง:

  • MySQL

  • MariaDB

ที่ใช้เก็บข้อมูล Server ได้สำเร็จ

② Database สำคัญกับ FiveM อย่างไร

Server RP จำนวนมากใช้ Database เก็บข้อมูล เช่น:

  • Characters

  • Money

  • Inventory

  • Vehicles

  • Jobs

  • Houses

  • Businesses

หาก Database ใช้งานไม่ได้ ระบบเหล่านี้อาจโหลดไม่ได้ทั้งหมด

③ FiveM มี Database ในตัวไหม

ไม่ควรคิดว่า FiveM มี Database RP สำเร็จรูปหนึ่งระบบ

Server Owner ต้องติดตั้งและกำหนด:

  • Database Server

  • Database Resource

  • Schema

ตาม Framework/Resources ที่ใช้

④ MySQL กับ MariaDB เหมือนกันไหม

มีความเข้ากันได้ในหลายส่วน แต่เป็น Database Server คนละโครงการและ Version/Behavior บางอย่างอาจแตกต่าง

Resource จึงควรใช้ Version ที่ผู้พัฒนารองรับ

⑤ oxmysql คืออะไร

เป็น Resource ที่ FiveM Server บางแห่งใช้เป็นตัวกลางระหว่าง Scripts กับ MySQL/MariaDB

Flow โดยทั่วไปคือ:

FiveM Script
↓
Database Resource
↓
MySQL/MariaDB
↓
Database Tables

⑥ Database Resource ไม่ใช่ Database Server

สำคัญมาก

เช่น:

oxmysql

ไม่ได้หมายความว่า MariaDB ถูกติดตั้งและทำงานแล้ว

⑦ Database Server คืออะไร

Software ฝั่ง Server ที่รับ SQL Connections และเก็บข้อมูลจริง

เช่น:

  • MariaDB

  • MySQL

⑧ Connection String คืออะไร

ข้อความที่บอก Resource ว่าจะเชื่อม Database ที่ไหนและด้วย Account อะไร

มักประกอบด้วย:

  • Host

  • Username

  • Password

  • Database

  • Port

⑨ ตัวอย่างแนวคิด Connection

Host = 127.0.0.1
User = fivem
Password = ********
Database = fivem
Port = 3306

ค่าจริงของคุณอาจไม่เหมือนตัวอย่าง

⑩ mysql_connection_string คืออะไร

Server Configuration อาจมี Connection String สำหรับ Database Resource

รูปแบบที่ Resource รองรับต้องดู Documentation ของ Resource Version ที่ใช้อยู่

⑪ Error Access denied for user คืออะไร

หมายความว่า Database Server ตอบกลับมาแล้ว แต่ไม่อนุญาต Account นั้นเข้าสู่ Database ตามข้อมูลที่ส่งมา

จุดที่ควรตรวจ:

  • Username

  • Password

  • Host Permission

⑫ Access Denied ไม่เหมือน Connection Refused

Access Denied

Database ตอบแล้ว แต่ Authentication ไม่ผ่าน

Connection Refused

ไปถึง Address/Port แต่ไม่มี Service รับ Connection หรือถูกปฏิเสธ

แยกสองอย่างนี้ก่อนแก้

⑬ Password ผิดมีอาการอะไร

มักพบข้อความประมาณ:

Access denied for user

แต่ควรอ่านข้อความเต็มเพื่อดู:

  • User

  • Host

ด้วย

⑭ Username ผิดก็ทำให้ Access Denied ได้

เช่น Connection String ใช้:

fivem_user

แต่ Database มี User:

fivem

เป็นคนละ Account

⑮ Password มีอักขระพิเศษต้องระวังไหม

ต้องระวังมากหาก Connection String ใช้รูปแบบ URL เพราะ Character บางตัวมีความหมายพิเศษใน URL

เช่น Password มี:

  • @

  • :

  • /

  • #

  • %

อาจต้อง Encode ตามรูปแบบ Connection String ที่ Resource รองรับ

⑯ ทำไม Password ถูกแต่ยัง Access Denied

อาจเป็นเพราะ User ถูกอนุญาตจาก Host อื่น

ตัวอย่างเชิงแนวคิด:

'user'@'localhost'

กับ:

'user'@'%'

เป็น Account Scope ที่อาจแตกต่างกัน

⑰ localhost กับ 127.0.0.1 เหมือนกันไหม

ในระดับการใช้งานทั่วไปดูคล้ายกัน แต่ Connection Method/Name Resolution บาง Environment อาจต่างกัน

จึงไม่ควรเปลี่ยนไปมาแบบสุ่ม

⑱ Database อยู่เครื่องเดียวกับ FiveM

มักใช้:

  • localhost

  • 127.0.0.1

ตาม Environment

⑲ Database อยู่คนละเครื่อง

ต้องใช้:

  • IP

  • Hostname

ของ Database Server

และต้องตรวจ Network/Firewall เพิ่ม

⑳ Connection refused คืออะไร

หมายความว่า Connection ไม่สามารถสร้างไปยัง Service ที่ปลายทางนั้นได้

สาเหตุที่พบบ่อย:

  • MariaDB ไม่ทำงาน

  • Port ผิด

  • Bind Address ผิด

  • Firewall

  • Docker Network ผิด

㉑ ตรวจ Database Service ก่อน

ถ้า Database ไม่ได้ Start ต่อให้ Username/Password ถูกทั้งหมดก็เชื่อมไม่ได้

㉒ Restart Database ช่วยไหม

ช่วยเฉพาะกรณี Service มีปัญหา

แต่ถ้า:

  • Password ผิด

  • Database Name ผิด

Restart ไม่แก้ต้นเหตุ

㉓ Port MySQL มาตรฐานคืออะไร

Port ที่พบได้บ่อยคือ:

3306

แต่ Server สามารถเปลี่ยน Port ได้

ดังนั้นให้ตรวจ Config จริง

㉔ Port ผิดมีอาการอย่างไร

อาจ:

  • Connection Refused

  • Timeout

ขึ้นอยู่กับ Network

㉕ อย่าเปิด Port 3306 Public โดยไม่จำเป็น

ถ้า FiveM กับ Database อยู่เครื่องเดียวกัน การเปิด Database Port สู่ Internet อาจเพิ่มความเสี่ยงโดยไม่จำเป็น

㉖ Remote Database ต้องเปิด Portไหม

ต้องให้ FiveM Server ติดต่อถึง Database ได้

แต่ควรจำกัด:

  • Source IP

  • Firewall

  • User Permission

ให้เหมาะสม

㉗ Connection Timeout คืออะไร

FiveM พยายามเชื่อม Database แต่ไม่ได้ Response ภายในเวลาที่กำหนด

อาจเกิดจาก:

  • Network

  • Firewall

  • Host ผิด

  • Database ไม่ตอบ

㉘ ETIMEDOUT หมายถึงอะไร

โดยทั่วไปเกี่ยวกับ Connection ที่รอจนหมดเวลา

ให้ตรวจ Network Path มากกว่ารีบแก้ Password

㉙ ECONNREFUSED หมายถึงอะไร

Connection ถูกปฏิเสธที่ Host/Port

จุดแรกควรดู:

  • Service Running?

  • Port ถูกไหม?

㉚ Unknown database คืออะไร

Database Serverทำงานและ Authenticationอาจผ่าน แต่ชื่อ Database ที่ระบุไม่มีอยู่

เช่น:

Unknown database 'fivem'

㉛ แก้ Unknown Database อย่างไร

ตรวจว่า Database จริงชื่ออะไร

เช่น:

fivem_prod

แต่ Config ใช้:

fivem

ต้องแก้ให้ตรง

㉜ Database Name ตัวพิมพ์ใหญ่เล็กสำคัญไหม

Environment และ OS สามารถมีผลกับการจัดการชื่อบางประเภท

แนวทางปลอดภัยคือใช้ชื่อให้ตรงกับ Database จริงทุกตัวอักษร

㉝ Database ยังไม่ได้สร้าง

ต้องสร้าง Database ตามขั้นตอนของ Framework/Resource ก่อน Import Schema

㉞ สร้าง Database แล้วต้อง Import SQL ไหม

โดยทั่วไป Resource/Framework หลายตัวต้องมี Tables ที่กำหนด

การมี Database เปล่าไม่เพียงพอ

㉟ Database เชื่อมได้แต่ Server Error Table doesn't exist

นี่ไม่ใช่ Connection Problem แล้ว

Connectionสำเร็จ แต่:

  • Schemaไม่ครบ

  • SQLยังไม่ได้ Import

㊱ Unknown table ต่างจาก Unknown database

Unknown Database

ไม่มี Databaseนั้น

Table doesn't exist

Databaseมี แต่ไม่มี Tableที่ Queryต้องการ

㊲ Connection สำเร็จแต่ Character ไม่โหลด

ให้ตรวจ Errorถัดไป เช่น:

  • Missing Table

  • Unknown Column

  • SQL Syntax

  • Incorrect Value

อย่าคิดว่า Connectionยังเสียเสมอไป

㊳ Database User ต้องมี Permission อะไร

ขึ้นอยู่กับ Resource

โดยทั่วไป FiveM Application Database User ต้องสามารถทำ Operations ที่ Scriptsใช้งาน เช่น:

  • SELECT

  • INSERT

  • UPDATE

  • DELETE

และ Migrationบางกรณีอาจต้องสิทธิ์เพิ่มเติม

㊴ ใช้ root เป็น FiveM Database User ดีไหม

ไม่แนะนำสำหรับ Production หากสามารถสร้าง Userเฉพาะ Databaseได้

ควรใช้หลัก:

Least Privilege

㊵ Least Privilege คืออะไร

ให้ Accountเฉพาะสิทธิ์เท่าที่จำเป็น

ลดผลกระทบหาก Credentialsรั่ว

㊶ root Account ควรใช้ทำอะไร

เหมาะกับ:

  • Database Administration

มากกว่าให้ Applicationใช้ถาวร

㊷ สร้าง Userเฉพาะ FiveM มีข้อดีอะไร

สามารถจำกัด:

  • Database

  • Host

  • Permissions

ได้

㊸ FiveM Database User ควรเห็นทุก Database ไหม

ไม่จำเป็น

ถ้า Serverใช้ Databaseเดียว ควรจำกัดตามความต้องการจริง

㊹ Permission Error มีข้อความแบบไหน

อาจเห็น:

SELECT command denied

หรือ:

INSERT command denied

ซึ่งหมายถึง Connectionสำเร็จแล้ว แต่สิทธิ์ SQLไม่พอ

㊺ Access Denied ตอน LoginกับCommand Deniedต่างกัน

Access Denied:

  • เข้า Database Serverไม่ได้

Command Denied:

  • เข้าได้ แต่ Operationนั้นไม่มีสิทธิ์

㊻ GRANT คืออะไร

SQLใช้กำหนด Permissionให้ Database User

แต่ก่อนแก้ Productionควรรู้:

  • User

  • Host

  • Database

ที่ถูกต้อง

㊼ อย่ารัน GRANT ALL แบบสุ่ม

เพราะอาจให้ Permissionกว้างเกินจำเป็น

㊽ phpMyAdmin เข้าได้แต่ FiveMเข้าไม่ได้

แปลว่า Databaseอาจทำงานปกติ

ให้ตรวจ:

  • FiveM Connection User

  • Host

  • Password

  • Connection String

เพราะ phpMyAdminอาจใช้ Accountคนละตัว

㊾ HeidiSQL เข้าได้แต่ FiveMเข้าไม่ได้

แนวคิดเดียวกัน

ตรวจว่าคุณใช้:

  • Host

  • Port

  • Username

ชุดเดียวกันจริงหรือไม่

㊿ Database Client ทดสอบ Connection ได้ดีมาก

ถ้า Loginด้วย Credentialsเดียวกับ FiveMไม่ได้:

  • ปัญหาอยู่ที่ Database/Network/Credentials

ถ้า Loginได้:

  • ค่อยตรวจ FiveM Config/Resource

51. ทดสอบด้วย Accountเดียวกับ FiveM

ไม่ใช่ root

เพื่อพิสูจน์ว่า Application Userใช้งานได้จริง

52. FiveM Config มี Password เก่าค้างอยู่

พบได้บ่อยหลัง:

  • เปลี่ยน Password

  • ย้าย Hosting

Database Userถูกแก้แล้ว แต่ server.cfg ยังใช้ค่าเดิม

53. Environment Variable คืออะไร

บาง Serverไม่เก็บ Passwordตรงใน Configแต่ใช้:

  • Environment Variables

ต้องตรวจว่าค่าถูกโหลดจริง

54. Connection String ซ้ำหลายจุดมีปัญหา

ถ้ามี Config:

  • Old File

  • New File

  • Environment

อาจแก้ผิดไฟล์

55. Serverกำลังอ่าน Configไหน

ต้องรู้ก่อนแก้

ไม่เช่นนั้นเปลี่ยน Connection Stringแล้ว Errorยังเหมือนเดิม

56. ensure oxmysql ลำดับสำคัญไหม

Database Resource ควรถูก Start ก่อน Resources ที่ต้องใช้ Database ตาม Dependencyของ Server

57. Script Startก่อน Database Resource

อาจทำให้ Resource Queryเร็วเกินไปแล้ว Error

58. Dependency คืออะไร

Resourceหนึ่งต้องมี Resourceอื่นทำงานก่อน

59. Database Readyคืออะไร

หมายถึง Database Resourceสร้าง Connection/Poolพร้อมรับ Queryแล้ว

60. Connection Pool คืออะไร

ระบบเก็บ Database Connectionsหลาย Connectionไว้ใช้ซ้ำ

ช่วยไม่ต้องเปิด Connectionใหม่ทุก Query

61. Pool Error คืออะไร

Connection Poolอาจสร้างไม่ได้เนื่องจาก:

  • Credentials

  • Host

  • Database

เหมือน Connectionทั่วไป

62. Too many connections คืออะไร

Databaseมี Connectionsพร้อมกันถึง Limit

FiveMอาจเปิด Connectionใหม่ไม่ได้

63. Too many connectionsแก้ด้วยเพิ่มLimitอย่างเดียวไหม

ไม่ควรรีบ

ต้องตรวจด้วยว่า Resourceมี:

  • Connection Leak

  • Configผิด

หรือไม่

64. Connection Leak คืออะไร

Applicationเปิด Connectionแล้วไม่คืน/ปิดตามที่ควร

ทำให้ Connectionsสะสม

65. Poolควรจัดการ Connection Reuse

Database Librariesสมัยใหม่มักใช้ Poolเพื่อจัดการเรื่องนี้

66. Resourceเปิด Connectionเองทุก Queryอาจเป็นปัญหา

Custom Scriptที่เขียนไม่ดีอาจทำให้ Database Loadสูง

67. Slow Connection ต่างจาก Slow Query

Slow Connection

เชื่อม Databaseช้า

Slow Query

เชื่อมได้แต่ SQLทำงานช้า

68. Database Connection สำเร็จแต่ Query ช้า

ไม่ใช่ Connection Errorแล้ว

ต้องตรวจ:

  • Query

  • Index

  • Server Load

69. FiveM Serverค้างตอน Database Down

Resourceบางตัวอาจรอ Queryจน:

  • Gameplayหน่วง

  • Errorsจำนวนมาก

70. Database Down กระทบ Playersอย่างไร

อาจ:

  • Saveไม่ได้

  • Characterโหลดไม่ได้

  • Moneyไม่อัปเดต

71. ถ้า Database ล่มกลาง Serverควรทำอย่างไร

Server Ownerควรลดความเสี่ยง Data Inconsistency

บางกรณีอาจต้อง:

  • Maintenance

แทนปล่อย Gameplayต่อทั้งที่ Saveไม่ได้

72. อย่า Restart Databaseรัว ๆ

หาต้นเหตุก่อน

Repeated Restartอาจทำให้ Connection Flapping

73. Connection Flapping คืออะไร

Database Connection:

  • ติด

  • หลุด

  • ติด

  • หลุด

ซ้ำ ๆ

74. สาเหตุ Flapping

อาจ:

  • Networkไม่เสถียร

  • Database Crash

  • Resource Limits

75. FiveMกับDatabaseอยู่คนละData Center

Latencyอาจสูง

Database Queryจำนวนมากจึงช้าลง

76. Databaseควรอยู่ใกล้ FiveM Server

ในทาง Infrastructure:

  • Network Latencyต่ำ

มักดีกว่า

77. Remote Database ผ่าน Internetมี Riskอะไร

  • Latency

  • Packet Loss

  • Firewall Complexity

  • Security Exposure

78. Local Databaseมีข้อดี

Connectionไม่ต้องวิ่งผ่าน Public Internet

แต่ Resource Competitionกับ FiveM Serverต้องจัดสเปกให้เหมาะ

79. VPSเดียวกันใช้ localhost

เป็น Configurationที่พบได้บ่อย

แต่ควรตรวจ MariaDB Bind/Socketตาม Environment

80. Docker FiveM กับ MariaDB ต้องใช้ localhostไหม

ไม่เสมอไป

ถ้าอยู่คนละ Container:

localhost

ภายใน FiveM Containerหมายถึง Containerตัวเอง ไม่ใช่ Database Container

81. Docker Network เป็นสาเหตุยอดนิยม

ควรใช้:

  • Service Name

  • Container Network Address

ตาม Architecture

82. Container Database Port Mappingต้องเข้าใจ

Portภายใน Containerกับ Portบน Hostอาจไม่ใช่ค่าเดียวที่ Clientต้องใช้ในทุก Network Path

83. Pterodactyl FiveM Serverล่ะ

Environmentแบบ Container Panelอาจมี Database Hostเฉพาะ

อย่าสมมติว่า:

127.0.0.1

ถูกเสมอ

84. Hosting Panel มักให้ Database Details

เช่น:

  • Host

  • Port

  • Username

  • Database Name

ให้ใช้ข้อมูลนั้นเป็น Sourceหลัก

85. DirectAdminเกี่ยวกับ FiveM Databaseได้ไหม

หาก Databaseถูกสร้างผ่าน Hosting Control Panelก็อาจได้รับ:

  • Database Name

  • User

จาก Panel

แต่ VPS FiveMทั่วไปอาจจัดการต่างกัน

86. Shared Hosting Databaseใช้กับFiveMได้ไหม

ขึ้นอยู่กับ Providerและ Remote Database Policy

หลาย Shared Hostingไม่ได้ออกแบบให้ FiveM Serverเชื่อม Remoteตามใจ

87. Remote MySQL Permission คืออะไร

Hostingอาจต้องเพิ่ม:

  • FiveM Server IP

ใน Allowed Hosts

88. ถ้าไม่ได้ Allow IPจะเกิดอะไร

อาจ:

  • Access Denied

  • Network Block

ขึ้นกับ Provider

89. Dynamic IPมีปัญหาไหม

ถ้า Firewall/Database Allowlistใช้ Source IP

เมื่อ IPเปลี่ยน:

  • Connectionอาจหยุด

90. FiveM VPSมักมี Static IP

แต่ควรตรวจ Providerจริง

91. Firewallมีสองฝั่ง

อาจต้องตรวจ:

FiveM Server

Outbound Connection

Database Server

Inbound Connection

92. Cloud Firewallคืออะไร

Providerบางรายมี Firewallนอก OSอีกชั้น

แม้ Linux Firewallเปิดแล้ว Cloud Firewallอาจยัง Block

93. Security Groupคืออะไร

Cloud Providersบางระบบใช้ Policyคล้าย Firewallเพื่อกำหนด:

  • Source

  • Port

94. Bind Address คืออะไร

Database Serverสามารถกำหนด Network Interfacesที่รับ Connection

ถ้ารับเฉพาะ Localhost:

  • Remote FiveMเข้าไม่ได้

95. เปลี่ยน Bind Addressเป็น 0.0.0.0 ดีไหม

ไม่ควรทำโดยไม่วาง:

  • Firewall

  • Authentication

  • Network Security

เพราะอาจทำให้ Database Listenกว้างขึ้น

96. วิธีที่ปลอดภัยกว่า

เปิดเฉพาะ Network Interface/Sourceที่จำเป็นเมื่อ Architectureรองรับ

97. Database Public Exposureเสี่ยงอะไร

เพิ่มพื้นที่โจมตีจาก Internet

โดยเฉพาะ Credentialsอ่อน

98. Password Databaseควรแข็งแรง

หลีกเลี่ยง:

123456
password
fivem

99. Passwordไม่ควรอยู่ใน Git Public

ถ้า Upload Configขึ้น Public Repository:

  • Credentialsอาจรั่ว

100. .gitignoreช่วยไหม

ใช้ป้องกัน Config/Secret Filesบางประเภทจากถูก Commit

แต่ต้องออกแบบ Repositoryให้ดี

101. Passwordรั่วแล้วควรทำอะไร

  • เปลี่ยน Password

  • ตรวจ Access

  • Update Connection String

และตรวจ Logsตามความเหมาะสม

102. อย่าแค่ลบ Passwordจาก Git Commitล่าสุด

Git Historyอาจยังมี Secretเก่า

ควร Rotate Credentialก่อน

103. Connection Stringควรปิดบังเวลาโพสต์ขอHelp

อย่าโพสต์:

mysql://user:realpassword@host/database

Public

104. Screenshot ConsoleอาจมีPasswordไหม

บาง Error/Debug Configอาจแสดง Connection String

ควรตรวจภาพก่อนโพสต์

105. Unknown Host คืออะไร

Hostnameที่กำหนดไม่สามารถ Resolveได้

อาจเกิดจาก:

  • พิมพ์ผิด

  • DNS

  • Docker Service Nameผิด

106. getaddrinfo ENOTFOUND คืออะไร

มักเกี่ยวกับ Hostnameไม่สามารถ Resolve

ตรวจ:

  • Host

ก่อน Password

107. Hostnameพิมพ์ผิดหนึ่งตัวก็เชื่อมไม่ได้

ตัวอย่าง:

database.internal

กับ:

databse.internal

108. localhostสะกดผิดก็เหมือนกัน

ตรวจ Configอย่างละเอียด

109. Connection URLมี Spaceได้ไหม

Space/Quoteผิดอาจทำให้ Config Parserอ่าน Connection Stringผิด

110. Quoteใน server.cfg สำคัญ

ให้ใช้ Syntaxที่ Resource Documentationกำหนด

111. Connection Stringแบบ URL

ตัวอย่างแนวคิด:

mysql://USER:PASSWORD@HOST/DATABASE

อย่าคัดลอกโดยไม่เปลี่ยนค่า

112. Connection Stringแบบ key-value

บาง Resources/Versionsอาจรองรับรูปแบบอื่น

ให้ยึด Documentationของ Resourceนั้น

113. อย่าใช้ Tutorialเก่าหลายปีเป็น Sourceเดียว

Database Resourceอาจเปลี่ยน:

  • Configuration

  • Supported Options

ได้

114. Resource Version สำคัญ

Configจาก Versionเก่าอาจใช้กับ Versionใหม่ไม่ได้เหมือนเดิม

115. FiveM Artifact UpdateทำDatabaseเสียไหม

ไม่ควรสรุปทันที

หาก Connection Errorเกิดหลัง Updateให้ตรวจ:

  • Resource Compatibility

  • Startup Order

  • Config

116. Update oxmysqlแล้วเชื่อมไม่ได้

ตรวจ:

  • Changelog

  • Configuration

  • Dependencies

ก่อน Rollback

117. Rollback Resourceได้ไหม

อาจใช้ชั่วคราวถ้ารู้ว่า Versionใหม่มี Compatibility Issue

แต่ควร Backupและเข้าใจ Migrationก่อน

118. ถ้า Migrationเกิดแล้วอย่าRollback Codeอย่างเดียว

Database Schemaใหม่อาจไม่ตรงกับ Codeเก่า

119. Version Compatibilityต้องมองทั้งระบบ

FiveM

  • Framework

  • Database Resource

  • Database Server

  • Scripts

120. ESX Database Errorเกิดได้ไหม

ได้

Frameworkไม่ทำให้คุณพ้นจาก:

  • Credentials

  • Schema

  • Network

Problems

121. QBCoreก็เช่นกัน

Databaseยังต้องทำงานและ Schemaต้องตรง Resources

122. Frameworkอื่นก็เหมือนกัน

หลัก Troubleshootingยังใช้:

Connection → Authentication → Database → Schema → Query

123. Character Tableไม่โหลด

ถ้า Connectionไม่ผ่าน:

  • ทุก Queryอาจ Fail

อย่าแก้ Character Scriptก่อน Database Connection

124. Frameworkบอก Database not ready

แปลว่าควรตรวจ Database Resource/Connection

125. Server Start Orderแนวคิด

Database Resource
↓
Framework
↓
Dependent Resources

แต่ Configจริงต้องยึด Dependenciesของระบบคุณ

126. ensure Resource คืออะไร

คำสั่ง FiveM Configสำหรับให้ Resourceทำงานตาม Configuration

แต่ชื่อ Resourceต้องตรง

127. Resource Missing ทำให้Databaseไม่ทำงาน

ถ้า Configเรียก:

ensure oxmysql

แต่ Resourceไม่มี/ชื่อ Folderผิด:

  • Database Bridgeไม่ Start

128. Failed to start resource

ต้องแก้ Resource Start Errorก่อน Connection Query

129. Dependency Missing

Database Resourceอาจต้องมี Requirementบางอย่าง

ดู Consoleตั้งแต่บรรทัดแรก

130. อย่าอ่านเฉพาะ Errorสุดท้าย

Root Errorอาจอยู่ก่อนหน้า 20–30บรรทัด

131. Console Logควรอ่านจากตอนResource Start

หา:

  • Database

  • Connection

  • Error

132. Restart Resourceแล้ว Errorซ้ำ

แสดงว่า Config/Infrastructureอาจยังผิด

133. Database Nameมี PrefixจากHosting

Hostingบางแห่งสร้างชื่อเช่น:

account_fivem

แต่ Userใส่:

fivem

จึงเกิด Unknown Database

134. Database Userก็อาจมี Prefix

เช่น:

account_fivemuser

ต้องใช้ชื่อจริงจาก Panel

135. Copy CredentialsจากPanelลดความผิดพลาด

แต่ระวัง:

  • Space

ติดหัวท้าย

136. Password Copyแล้วมี Space

อาจทำให้ Authenticationไม่ผ่าน

137. เปลี่ยน Passwordแล้วต้องUpdateทุกApplication

ถ้ามี:

  • FiveM

  • Website

  • Admin Tools

ใช้ Userเดียวกัน

แต่ทางที่ดีควรแยก Usersตาม Application

138. แยก Database Userต่อApplicationดีอย่างไร

ถ้า FiveM Credentialรั่ว:

  • ไม่ได้สิทธิ์ Databaseอื่นโดยอัตโนมัติ

139. Database User Host Restriction

จำกัดว่า User Loginได้จาก:

  • localhost

  • Specific IP

ช่วย Security

140. % ใน MySQL User Host Concept

มักใช้หมายถึง Hostหลายตำแหน่ง

แต่การเปิดกว้างเกินไม่เหมาะ Productionโดยไม่จำเป็น

141. Access Deniedแสดง Hostอะไร

อ่านข้อความเช่น:

'user'@'10.x.x.x'

ช่วยบอกว่า Databaseมอง Clientมาจาก Addressไหน

142. Dockerทำให้ Source Hostไม่ใช่127.0.0.1ได้

Databaseอาจเห็น:

  • Container Network IP

ดังนั้น User Permissionต้องตรง Architecture

143. NATคืออะไรแบบง่าย

Networkแปลง Addressระหว่าง Layers

อาจทำให้ Databaseเห็น Source IPต่างจากที่คิด

144. Hosting Panel Database Hostควรเชื่อก่อน Guess

ถ้า Providerให้ Host:

mysql01.provider.local

อย่าเปลี่ยนเป็น localhostเองโดยไม่มีเหตุผล

145. Test Port Connectivity

Server Adminสามารถทดสอบว่า Host/Portเข้าถึงได้หรือไม่ด้วยเครื่องมือระบบ

แต่ไม่ควรเปิด Portมั่วเพื่อทดสอบ

146. Ping Hostได้ไม่ได้แปลว่าMySQLเปิด

ICMP Pingกับ TCP Portเป็นคนละเรื่อง

147. MySQL Client Testดีกว่า Ping

เพราะทดสอบ:

  • Host

  • Port

  • User

  • Password

จริง

148. Accessผ่านphpMyAdminไม่ได้พิสูจน์Remote Access

phpMyAdminอาจอยู่เครื่องเดียวกับ Database

แต่ FiveMอยู่คนละ Server

149. Remote FiveMจึงยังถูกFirewall Blockได้

แม้ phpMyAdminทำงานปกติ

150. Connectionจากบ้านได้แต่VPSไม่ได้

อาจเป็น:

  • IP Allowlist

  • Provider Firewall

  • Routing

ต้องแยก Source Network

151. Database Server Loadสูงทำให้Timeoutได้ไหม

ได้

หาก Serviceตอบช้ามากหรือ Connectionsเต็ม

152. CPU Databaseเต็ม

Queriesอาจช้า

แต่ Connection Refusedไม่จำเป็นต้องเกิดจาก CPUอย่างเดียว

153. RAMหมดอาจทำMariaDBถูกKill

บน Linuxอาจมี:

  • OOM Situation

ส่งผล Serviceหยุด

154. Diskเต็มมีผลDatabaseไหม

มี

MariaDBอาจไม่สามารถ:

  • Write

  • Create Logs

  • Update Tables

ได้

155. Diskเต็มแต่Connectionยังได้

เป็นไปได้

จากนั้น Queryอาจ Errorอีกประเภท

156. ตรวจDisk Spaceควรทำเมื่อDatabaseมีปัญหากว้าง

โดยเฉพาะ Serviceหยุดเอง

157. Database Crash Loopคืออะไร

MariaDB Startแล้วหยุดซ้ำ

ต้องดู:

  • Database Logs

ไม่ใช่ FiveM Consoleอย่างเดียว

158. MariaDB Error Log สำคัญ

ถ้า Serviceไม่ Start ต้องดู Logฝั่ง Database

159. FiveM Consoleเห็นแค่ผลลัพธ์

เช่น:

Connection refused

แต่เหตุผล MariaDBล่มอาจอยู่ใน Database Log

160. Corrupt TableทำConnectionไม่ได้ไหม

โดยทั่วไป Table Corruptionมักกระทบ Query/Tableมากกว่า Authentication Connection

อย่ารีบสรุปว่า Databaseทั้งหมด Corrupt

161. Database Corruptionเป็นเรื่องใหญ่

ควร Backup/Recoveryตามวิธี Database

ไม่ควร Delete Filesสุ่ม

162. ลบ ibdata หรือ Database Filesเองอันตรายไหม

มาก

อาจทำให้ข้อมูลเสียถาวร

อย่าใช้เป็นวิธีแก้ Connection Errorทั่วไป

163. Reinstall MariaDBอาจทำข้อมูลหาย

หากจัดการ Data Directoryผิด

จึงไม่ใช่ขั้นตอนแรก

164. Connection Errorส่วนใหญ่เริ่มแก้ง่ายกว่า

ตรวจ:

  1. Service

  2. Host

  3. Port

  4. User

  5. Password

  6. Database

ก่อน

165. Checklist Access Denied

  • Usernameถูกไหม

  • Passwordถูกไหม

  • User Hostถูกไหม

  • Accountถูก Lockไหม

  • Connection String Parseถูกไหม

166. Checklist Connection Refused

  • Database Runningไหม

  • Hostถูกไหม

  • Portถูกไหม

  • Listen Addressถูกไหม

  • Container Networkถูกไหม

167. Checklist Timeout

  • Host reachableไหม

  • Firewall

  • Cloud Firewall

  • Routing

  • Database Load

168. Checklist Unknown Database

  • Databaseสร้างแล้วไหม

  • ชื่อตรงไหม

  • Hosting Prefixไหม

169. Checklist Table Missing

  • SQL Importแล้วไหม

  • Migrationครบไหม

  • ใช้ Databaseถูกตัวไหม

170. Checklist Permission Denied

  • User Grants

  • Database Scope

  • Operationที่ Resourceต้องใช้

171. Checklistหลังย้ายHost

ตรวจทุกอย่างใหม่:

  • IP

  • Database Host

  • Username

  • Password

  • Database

  • Firewall

172. Backup Databaseก่อนย้าย

ควรมี:

  • SQL Dump

  • Restore Testถ้าเป็นไปได้

173. ย้าย Databaseแต่ลืมเปลี่ยนConnection String

FiveMยังพยายามต่อ:

  • Serverเก่า

อาจ Timeoutหรือเข้า Databaseผิดตัว

174. Databaseเก่ายังออนไลน์อันตรายไหม

FiveMอาจ Connectสำเร็จแต่ใช้:

  • Old Data

ทำให้คิดว่าข้อมูลหาย/ย้อนเวลา

175. ตรวจ Database Hostให้แน่ใจ

สำคัญมากหลัง Migration

176. Databaseมีสองชุดชื่อเหมือนกัน

ต้องรู้ว่า FiveMกำลังใช้ Instanceไหน

177. Environment ProductionกับTest

อย่าให้ Production FiveMไปต่อ:

  • Test Database

โดยไม่ตั้งใจ

178. Test Databaseอาจทำให้Player Dataเหมือนหาย

เพราะข้อมูลอยู่คนละ Database

179. ก่อนคิดว่าข้อมูลถูกลบ

เช็ก:

  • Host

  • Database Name

ก่อน

180. Characterทุกคนกลายเป็นใหม่หลังMigration

มีความเป็นไปได้ว่า:

  • FiveMเชื่อม Databaseเปล่า

ไม่ใช่ข้อมูลเก่าถูก Deleteเสมอไป

181. อย่า Import Backupซ้ำก่อนตรวจ

เพราะอาจ Duplicate/Overwriteข้อมูล

182. Query Databaseปัจจุบันดู Table/Rowsก่อน

ใช้ Read-only Inspectionถ้าไม่แน่ใจ

183. Database Timezoneไม่เกี่ยวกับ Connection Refused

อย่าปะปนปัญหา

Timezoneมีผลหลัง Connectionสำเร็จ

184. SQL Modeไม่ทำให้Password Access Denied

เป็นคนละ Layer

185. Error 1292จากบทความก่อนหน้าเกิดหลังConnectionแล้ว

เพราะ Databaseต้องรับ Queryก่อนจึงสามารถตอบ:

  • Incorrect datetime value

ได้

186. ลำดับ Layerช่วย Troubleshoot

Network → Authentication → Database → Schema → Query → Data

187. ถ้าติด Network

ยังไม่ต้องตรวจ SQL Query

188. ถ้าติด Authentication

ยังไม่ต้องแก้ Table Schema

189. ถ้า Connectionผ่านแล้ว Missing Table

ค่อยตรวจ Schema

190. ถ้า Schemaผ่านแล้ว Error Data

ค่อยตรวจ Values/Queries

191. วิธีนี้ลดการแก้มั่ว

เพราะแก้ตาม Layerที่ Errorเกิดจริง

192. ตัวอย่าง Access Denied

Access denied for user 'fivem'@'localhost'

ให้ตรวจ:

  • Account

  • Password

  • User Host

193. ตัวอย่าง Unknown Database

Unknown database 'fivem'

ให้ตรวจชื่อ Database/การสร้าง Database

194. ตัวอย่าง ECONNREFUSED

connect ECONNREFUSED 127.0.0.1:3306

ให้ตรวจว่า Database Serviceรับ Connectionที่ Address/Portนั้นจริงไหม

195. ตัวอย่าง Timeout

ETIMEDOUT

เน้น Network/Firewall/Availability

196. ตัวอย่าง Table Missing

Table 'fivem.players' doesn't exist

Connectionผ่านแล้ว

ต้องตรวจ SQL Schema

197. ตัวอย่าง Unknown Column

Unknown column 'citizenid'

อาจเป็น:

  • Migration

  • Framework Schema mismatch

198. ตัวอย่าง Duplicate Entry

ไม่ใช่ Connection Error

หมายถึง Queryชน:

  • Unique Constraint

199. อ่าน Errorให้ครบประหยัดเวลา

อย่าพูดเพียง:

“Database Error”

เพราะกว้างเกิน

200. ขอHelpควรส่งอะไร

  • Errorเต็ม

  • Database Resource

  • Framework

  • สิ่งที่เพิ่งเปลี่ยน

โดยปิดบัง Credentials

201. ห้ามส่ง Password

แม้คนช่วยจะขอดู Config

ให้ Maskเป็น:

PASSWORD_HIDDEN

202. Host/IPต้องปิดไหม

Public Server IPอาจเป็นข้อมูล Publicอยู่แล้ว แต่ Database Internal Host/Infrastructureไม่จำเป็นต้องเปิดเผยทั้งหมด

203. Connection Stringควร Mask

เช่น:

mysql://fivem:***@127.0.0.1/fivem

204. อย่าMask Error Messageทั้งหมด

ข้อมูล:

  • Error Code

  • User Host

  • Database Name

บางส่วนช่วย Debug

แต่ไม่ต้องเปิด Password

205. Server Ownerมือใหม่มักพลาดอะไร

  • ใช้ Database Nameผิด

  • Passwordเก่า

  • Resource Start Order

  • ไม่ Import SQL

  • ใช้ localhostทั้งที่ DBอยู่คนละ Container

206. อีกจุดที่พบบ่อยคือ Hosting Prefix

Database/Userถูกสร้างด้วย Prefixแต่ Configไม่ได้ใช้ชื่อเต็ม

207. อีกจุดคืออักขระพิเศษในPassword

Connection URL Parseผิดได้

208. อีกจุดคือ Database Port

Providerไม่ได้ใช้ 3306เสมอไป

209. อีกจุดคือ Firewall

Remote Databaseไม่อนุญาต FiveM Server IP

210. อีกจุดคือ Role/User Grants

Userเข้าได้แต่ไม่มี Permissionเขียน

211. Character Saveต้องมี Write Permission

ถ้า SELECTได้แต่ UPDATEไม่ได้:

  • Characterอาจโหลดได้

  • แต่ Saveไม่ได้

212. อาการโหลดได้แต่เงินไม่Save

อาจเป็น Permission/Query Error

ไม่ใช่ Connectionล้มทั้งหมด

213. Read-only Database User

เหมาะกับ Reportingบางระบบ แต่ไม่เหมาะเป็น Userหลักของ RP Serverที่ต้อง Update Data

214. Database Read-only Modeมีไหม

Database Infrastructureบางแบบอาจถูกตั้ง:

  • Read-only

ทำให้ SELECTผ่านแต่ Writeล้ม

215. Replica Databaseคืออะไร

ระบบ Databaseบาง Architectureมี Read Replica

ไม่ควรให้ FiveMเขียนไป Replicaที่อ่านอย่างเดียว

216. FiveMขนาดเล็กไม่จำเป็นต้องใช้Architectureซับซ้อน

Databaseเดียวที่ Backupดีและ Securityถูกต้องอาจเพียงพอ

217. Scaleเมื่อจำเป็น

ไม่ควรเพิ่ม:

  • Proxy

  • Replica

  • Remote Layers

ถ้ายังแก้ Basic Connectionไม่มั่นคง

218. Database Proxy คืออะไร

ตัวกลางรับ Database Connection

ใช้ใน Infrastructureบางแบบ

แต่เพิ่ม Layerที่ต้อง Troubleshoot

219. Proxy ErrorอาจดูเหมือนMySQL Error

ต้องรู้ว่า Connection Stringชี้ไป:

  • Proxy

  • Databaseโดยตรง

220. DNS Database Hostมีประโยชน์

เปลี่ยน Backendได้โดยไม่ต้องเปลี่ยน IPในทุก Config

แต่ DNS Failureก็เพิ่มอีกจุดหนึ่ง

221. IPตรงลด DNS Dependency

แต่ Migrationต้องแก้ Configหาก IPเปลี่ยน

ไม่มีแบบเดียวดีที่สุด

222. Production Databaseควร Monitor

อย่างน้อยควรรู้:

  • Service Up/Down

  • Disk

  • Connections

223. Monitoringช่วยรู้ก่อนPlayersแจ้ง

เช่น Database Connectionsใกล้เต็ม

224. Health Check คืออะไร

ตรวจว่า Serviceตอบสนองตามปกติหรือไม่

225. FiveM Resourceควร Handle Database Unavailable

Developerควรออกแบบไม่ให้:

  • Duplicate

  • Data Corrupt

เมื่อ Databaseชั่วคราวใช้ไม่ได้

226. Retry Connection คืออะไร

Database Clientบางตัวพยายามเชื่อมใหม่หลัง Connectionหลุด

227. Retryไม่ควร Spam

ควรมี Delay/Backoffตาม Design

เพื่อไม่ยิง Connection Requestจำนวนมากตอน Databaseล่ม

228. Backoff คืออะไร

เพิ่มช่วงเวลารอก่อน Retryซ้ำ

เป็นแนวคิด Infrastructure

229. Connection LostกลางQuery

อาจทำ Transaction Stateไม่แน่นอน

Resourceต้อง Handleอย่างระวัง

230. Server Ownerควรเช็กข้อมูลหลังDatabase Outage

โดยเฉพาะระบบ:

  • Purchases

  • Banking

  • Inventory

231. อย่าคิดว่า Query Failทุกครั้งหมายถึงไม่มีการเปลี่ยน Data

Transaction Behaviorขึ้นกับ Operation/ระบบ

จึงควรตรวจจริง

232. Transactionช่วยอะไร

รวมหลาย Operationsให้ Commit/Failร่วมกันเมื่อออกแบบถูกต้อง

233. Bankingควรใช้Transactionอย่างเหมาะสม

เช่น Transfer:

  • หัก Sender

  • เพิ่ม Receiver

ควรเกิดอย่างสอดคล้อง

234. Database Connectionไม่เสถียรอาจสร้างEconomy Issue

ถ้า Resource Handle Errorsไม่ดี

235. Duplicate RewardอาจเกิดจากRetry Logicที่ผิด

Developerต้องระวัง Idempotency

236. Idempotency คืออะไรแบบง่าย

การทำ Requestซ้ำแล้วไม่ควรสร้างผลซ้ำเกินที่ตั้งใจ

สำคัญกับ:

  • Purchases

  • Payments

237. Server Ownerไม่ต้องแก้ Codeทุกครั้ง

ถ้าเป็น Third-party Resourceควรตรวจ:

  • Official Update

  • Known Issues

ก่อนแก้ Source

238. แก้ Third-party Codeเองมี Risk

Updateครั้งหน้าอาจ:

  • เขียนทับ

  • Conflict

239. Backup Resourceก่อน Patch

เช่นเดียวกับ Database

240. เปลี่ยน Database Passwordช่วง Server Online

Connectionsเก่าอาจยังอยู่แต่ Connectionsใหม่ Fail

ควรทำเป็น Maintenance Change

241. Credential Rotation คืออะไร

เปลี่ยน Password/Secretตามรอบหรือหลัง Incident

242. หลัง Rotateต้อง Update FiveM Config

และ Restart/Reloadตาม Resource Requirement

243. เก็บ Secretใน Environmentช่วยลดConfig Leak

แต่ Environment Permissionก็ต้องปลอดภัย

244. Server.cfgควร Permissionเหมาะสม

ไม่ให้ Userที่ไม่เกี่ยวอ่าน Credentials

245. FTP Accountรั่วอาจทำ Database Credentialsรั่ว

เพราะ Config Filesอาจถูกดาวน์โหลดได้

246. Server Securityเป็นระบบเชื่อมกัน

FiveM Securityไม่ได้มีแค่ Anti-Cheat

ยังรวม:

  • OS

  • Database

  • Credentials

  • Backups

247. Database Userไม่ควรใช้ PasswordเดียวกับAdmin Login

ลดผลกระทบจาก Credential Reuse

248. Credential Reuseคืออะไร

ใช้ Passwordเดียวกันหลาย Services

ถ้าหนึ่งจุดรั่วจะเสี่ยงหลายระบบ

249. Backupก่อนแก้ Connectionจำเป็นไหม

การแก้ Host/Passwordอย่างเดียวไม่แก้ Data

แต่ถ้าจะ:

  • Import

  • Migration

  • Grantsใหญ่

  • Database Move

ควร Backup

250. Import SQLไม่ใช่วิธีแก้ Access Denied

เพราะคุณยัง Login Databaseไม่ได้ด้วย Application User

251. Reset Passwordไม่ใช่วิธีแก้ Unknown Database

ต้องสร้าง/แก้ชื่อ Database

252. เปิด Firewallไม่ใช่วิธีแก้Wrong Password

แยก Error Typeก่อน

253. Restart FiveMไม่ใช่วิธีแก้User Permission

Errorจะกลับมา

254. Clear FiveM Cacheไม่แก้Database Authentication

ปัญหาอยู่ฝั่ง Server Infrastructure

255. Reinstall GTA Vไม่เกี่ยว

Database Errorเกิดฝั่ง FiveM Server

256. Playerทั่วไปแก้Database Connectionได้ไหม

ไม่ได้ถ้าเป็น Server-side Problem

ต้องให้:

  • Server Owner

  • Developer

แก้

257. ถ้าเป็นผู้เล่นแล้วเห็น Database Error

ควรแจ้ง Staffพร้อม:

  • เวลา

  • สิ่งที่กำลังทำ

ไม่ต้องแก้เครื่องตัวเองก่อน

258. Database Errorเกิดเฉพาะคุณ

ก็ยังอาจเป็น Row/Character-specific Server Error

ไม่จำเป็นต้อง Reinstall FiveM

259. Database Errorเกิดกับทุกคน

ยิ่งชี้ไปที่:

  • Server

  • Database

มากขึ้น

260. Characterไม่SaveหลังDisconnect

Server Ownerควรตรวจ Consoleช่วง:

  • Disconnect

  • Save Query

261. Database ErrorหลังRestart

ดู Startup Sequenceตั้งแต่ต้น

262. Database Resourceขึ้น Connected

เป็นสัญญาณดี แต่ยังไม่รับประกันว่า:

  • Schema

  • All Queries

ถูกต้อง

263. Connection Success ≠ Database Setup Complete

ยังต้องมี:

  • Tables

  • Columns

  • Migrations

264. Database Setup Complete ≠ Resourceไม่มีBug

Queries/Dataยังผิดได้

265. Troubleshootingต้องแยก Layer

นี่เป็นหลักสำคัญที่สุดของบทความนี้

266. Layer 1 — Service

MariaDB/MySQLทำงานไหม

267. Layer 2 — Network

FiveMติดต่อ Host/Portได้ไหม

268. Layer 3 — Authentication

Username/Password/User Hostถูกไหม

269. Layer 4 — Database

ชื่อ Databaseมีไหม

270. Layer 5 — Permission

Userทำ Queryที่ต้องการได้ไหม

271. Layer 6 — Schema

Tables/Columnsตรง Resourceไหม

272. Layer 7 — Query/Data

SQLและค่าที่ส่งถูกไหม

273. ถ้าทำตาม LayerจะหาRoot Causeเร็ว

เพราะไม่กระโดดจาก:

Password
→ Cache
→ SQL Mode
→ Reinstall

แบบสุ่ม

274. ตัวอย่าง Flow Access Denied

Error
↓
Databaseตอบแล้ว
↓
Networkผ่าน
↓
ตรวจ User/Password/Host Grant

275. ตัวอย่าง Flow Connection Refused

Error
↓
ยังเข้า Serviceไม่ได้
↓
ตรวจ Database Running/Host/Port

276. ตัวอย่าง Flow Unknown Database

Connection/Authผ่าน
↓
ตรวจ Database Name/Create Database

277. ตัวอย่าง Flow Table Missing

Connection/Auth/Databaseผ่าน
↓
ตรวจ Import/Migration

278. ตัวอย่าง Flow Incorrect datetime

Connectionผ่านไปถึง Queryแล้ว
↓
ตรวจ Data/Schema

279. Checklistก่อนเปิด FiveM Production

  • Database Service Running

  • Connection Stringถูก

  • Application Userถูก

  • Databaseมี

  • Schema Importแล้ว

  • Resource Start Orderถูก

  • Backupมี

280. Checklistหลังย้าย Database

  • Hostใหม่

  • Portใหม่

  • Userใหม่/เดิม

  • Password

  • Database Name

  • Firewall

  • Dataครบ

  • Config FiveMอัปเดต

281. Checklistหลังเปลี่ยนPassword

  • FiveM Config

  • Environment Secret

  • Restart Resourceตามจำเป็น

  • Test Connection

282. ChecklistหลังUpdate Resource

  • Documentation

  • Database Migration

  • Dependencies

  • Startup Errors

283. Checklistเมื่อPlayersเข้าไม่ได้ทั้งเมือง

ดู:

  • FiveM Server

  • Database Resource

  • MariaDB Service

  • Infrastructure Status

284. Checklistเมื่อมีเพียงCharacterเดียวเข้าไม่ได้

ดู:

  • Character Row

  • Query Error

หลังพิสูจน์ว่า Connectionโดยรวมทำงาน

285. Common Error Mapping

Errorจุดที่ควรตรวจ
Access deniedUser / Password / Host Permission
Connection refusedService / Host / Port
ETIMEDOUTNetwork / Firewall
Unknown databaseDatabase Name
Table doesn't existSchema / Import
Unknown columnMigration / Version
Command deniedSQL Permission
Too many connectionsPool / DB Limit / Leak
Incorrect datetimeQuery / Data / Schema

286. สิ่งที่ไม่ควรทำ

วิธีเพราะอะไร
ล้าง FiveM Cacheไม่แก้ Server DB Credentials
Reinstall GTAไม่เกี่ยวกับ Server Database
เปิด Portทุกอย่างเพิ่ม Security Risk
ใช้ rootถาวรPermissionกว้างเกิน
Import SQLซ้ำมั่วเสี่ยง Schema/Data
ลบ Databaseเสี่ยงข้อมูลหาย
เปลี่ยนหลายจุดพร้อมกันหา Root Causeยาก

287. FAQ — FiveM เชื่อม MySQL ไม่ได้ทำอย่างไร

เริ่มตรวจตามลำดับ:

  1. Databaseทำงานไหม

  2. Host/Portถูกไหม

  3. Username/Passwordถูกไหม

  4. Database Nameถูกไหม

  5. Userมี Permissionไหม

288. Access denied for userแก้อย่างไร

ตรวจ:

  • Username

  • Password

  • User Host Permission

ก่อน

289. ECONNREFUSEDแก้อย่างไร

ตรวจว่า MariaDB/MySQLกำลัง Listenที่:

  • Host

  • Port

ที่ Connection Stringระบุหรือไม่

290. Unknown databaseแก้อย่างไร

ตรวจชื่อ Databaseและสร้าง Database/Import Schemaตาม Resource Documentationถ้ายังไม่มี

291. FiveMใช้ Port 3306เสมอไหม

ไม่

3306พบได้บ่อย แต่ Databaseสามารถใช้ Portอื่นได้

292. ใช้ localhostหรือ127.0.0.1

ขึ้นอยู่กับ Environment

ถ้า Databaseอยู่คนละ Container/Server อาจใช้ไม่ได้ทั้งคู่

293. oxmysqlขึ้น Connection Errorเพราะอะไร

อาจเกิดจาก:

  • Host

  • Port

  • Credentials

  • Database

  • Network

ต้องอ่าน Errorเต็ม

294. ต้อง Start oxmysqlก่อน Frameworkไหม

Resourcesที่พึ่ง Databaseควรรอ Database Resourceพร้อมตาม Dependency/Configurationของระบบ

295. Databaseเข้า phpMyAdminได้แต่ FiveMไม่ได้

ตรวจว่า FiveMใช้ Credentials/Hostเดียวกันจริงหรือไม่ และ Remote Accessถูกอนุญาตหรือไม่

296. Passwordมี @ แล้วเชื่อมไม่ได้

ถ้าใช้ URL-style Connection String อักขระพิเศษอาจต้องถูก Encodeตามรูปแบบที่ Resourceรองรับ

297. เปลี่ยนPasswordแล้วFiveMใช้ไม่ได้

ตรวจว่า Connection Stringถูกอัปเดตแล้วหรือยัง

298. Databaseอยู่คนละ VPSต้องทำอะไร

ต้องมี:

  • Network Reachability

  • Firewall Rule

  • Database User Host Permission

ที่เหมาะสม

299. เปิด3306ให้ทั้งโลกดีไหม

ไม่

ควรจำกัด Sourceเท่าที่จำเป็น

300. ใช้ rootกับFiveMได้ไหม

ทาง Technicalอาจ Connectionได้ แต่ Productionควรใช้ Userเฉพาะที่มี Permissionเหมาะสมมากกว่า

301. Database Userไม่มีINSERTทำอย่างไร

ต้องแก้ Permissionให้ตรง Operationsที่ Resourceต้องใช้

302. Characterโหลดได้แต่Saveไม่ได้

ตรวจ:

  • UPDATE/INSERT Permission

  • Query Errors

303. Table doesn't existแก้อย่างไร

Import/Migrate Schemaที่ถูก Version

อย่าแก้ Connection Stringถ้ามันเชื่อมได้แล้ว

304. Unknown columnแก้อย่างไร

ตรวจว่า Resourceกับ Database Schemaเป็น Versionเดียวกัน

305. Too many connectionsแก้อย่างไร

ตรวจ:

  • Connection Pool

  • Leaks

  • DB Limits

  • Resource Load

ก่อนเพิ่ม Limitแบบสุ่ม

306. FiveM Databaseหลุดเป็นพัก ๆ

อาจเกิดจาก:

  • Network

  • Database Restart

  • Resource Limits

ต้องดู Logsทั้ง FiveMและ Database

307. Database Connectionช้าทำอย่างไร

ตรวจ:

  • Network Latency

  • Database Load

  • DNS

แยกจาก Slow Query

308. Clear Cacheช่วยไหม

สำหรับ Server-side MySQL Authentication/Connection Error:

  • โดยทั่วไปไม่ใช่จุดแก้หลัก

309. Restart Serverช่วยไหม

ถ้า Errorมาจาก Credentialผิด:

  • ไม่ช่วย

แต่ Resource/Service Stateบางกรณีอาจถูก Reset

310. ต้องลบ Databaseสร้างใหม่ไหม

แทบไม่ควรเป็นขั้นแรกของ Connection Error

311. Databaseข้อมูลหายหลังแก้Connection

ก่อนสรุปว่าหาย ให้เช็กว่า FiveMกำลังเชื่อม:

  • Databaseตัวถูก

  • Hostตัวถูก

หรือไม่

312. วิธีดูว่าต่อ Databaseผิดตัวไหม

ตรวจ:

  • Connection Config

  • Database Name

  • Recordsล่าสุด

อย่างระมัดระวัง

313. Errorเกิดหลังย้าย Hosting

สาเหตุยอดนิยมคือ:

  • Hostเปลี่ยน

  • Database Prefixเปลี่ยน

  • Firewall

  • Credentials

314. ErrorเกิดหลังDocker Migration

ตรวจ:

  • Container Network

  • Service Name

  • Internal Port

ก่อน

315. ErrorเกิดหลังFirewall Update

ตรวจ Ruleฝั่ง:

  • Database

  • Cloud Provider

316. ErrorเกิดหลังDatabase Password Rotation

ตรวจ Secret/Configทุกจุดที่ Applicationใช้

317. ErrorเกิดหลังMariaDB Restart

ถ้า FiveMไม่ Reconnectเอง:

  • Database Resourceอาจต้อง Restart/Reconnectตาม Design

318. Databaseกลับมาแล้ว FiveMยัง Error

ตรวจ Connection Pool Stateและ Resource Logs

319. Production Serverควรมี Monitoringไหม

มีประโยชน์มาก โดยเฉพาะ:

  • Database Up/Down

  • Disk

  • Connections

320. สรุป Workflow แก้ FiveM Database Connection

Read exact error
↓
Check DB service
↓
Check host/port
↓
Check username/password
↓
Check database name
↓
Check permissions
↓
Check schema
↓
Test affected resource

สรุป FiveM MySQL Connection Error แก้อย่างไร

FiveM MySQL/MariaDB Connection Error เกิดได้ตั้งแต่ Database Service ไม่ทำงาน, Host หรือ Port ผิด, Username/Password ไม่ถูกต้อง, User ไม่มี Permission, Firewall Block, Database Name ผิด ไปจนถึง FiveM กำลังเชื่อม Database คนละตัวกับที่คิด

สิ่งสำคัญคืออย่าเหมารวม Errorทุกแบบเป็น “MySQL พัง”

ให้แยกตามข้อความ:

Access Denied → Credentials/Permission
Connection Refused → Service/Host/Port
Timeout → Network/Firewall
Unknown Database → Database Name
Missing Table → Schema/Migration

สิ่งที่ comsiam แนะนำคือแก้ปัญหาตาม Layerจากด้านนอกเข้าไปด้านใน — เริ่มจาก Service และ Network ก่อน Authentication จากนั้นจึงตรวจ Database, Permission, Schema และ Query วิธีนี้เร็วกว่าการเปลี่ยน Configหลายจุดพร้อมกันและช่วยลดโอกาสทำ Production Databaseเสียโดยไม่จำเป็น

อีกสิ่งที่ comsiam ย้ำคืออย่าใช้ Database root เป็น Application Accountถาวรเพียงเพราะแก้ Access Deniedได้ง่ายกว่า และอย่าเปิด Database Portสู่ Internetทั้งหมดโดยไม่มี Firewall ควรสร้าง Userเฉพาะ FiveM ให้ Permissionเท่าที่จำเป็น ป้องกัน Connection String และ Backupข้อมูลก่อนทำ Migrationหรือแก้ Schemaครั้งใหญ่

Comments

Popular posts from this blog

FiveM ยังน่าเล่นไหม? Enhanced เปลี่ยน FiveM แค่ไหน

FiveM คืออะไร เล่นอย่างไร สำหรับมือใหม่ เริ่มต้นตั้งแต่ศูนย์

วิธีตั้ง Admin Permission ด้วย add_ace และ add_principal FiveM แบบละเอียด