{"id":2467,"date":"2023-02-08T22:47:49","date_gmt":"2023-02-08T22:47:49","guid":{"rendered":"https:\/\/xgamingserver.com\/blog\/?p=2467"},"modified":"2026-06-15T14:37:42","modified_gmt":"2026-06-15T14:37:42","slug":"how-to-add-mysqloo-to-your-garrys-mod-server","status":"publish","type":"post","link":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/","title":{"rendered":"How to add MySQLOO to your Garry\u2019s Mod server"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\">If you run DarkRP, an admin mod, or any addon that needs to remember data between map changes and restarts, sooner or later you will hit the same requirement: MySQLoo. It is the bridge that lets your server&#8217;s Lua code talk to a real MySQL or MariaDB database, and it is one of the most common &#8220;why won&#8217;t my addon load?&#8221; stumbling blocks for new Garry&#8217;s Mod admins. The good news is that installing it is a single-file drop \u2014 once you understand which file to download and where to put it.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">This guide walks through exactly what MySQLoo is, how to pick the correct binary for your server&#8217;s operating system and branch, where to place it, the Windows prerequisite that trips up half of all installs, and how to confirm it loaded. By the end you will have a working MySQL module ready for DarkRP or any other persistence-hungry addon.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">What MySQLoo Actually Is<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">MySQLoo is an object-oriented MySQL binary Lua module for Garry&#8217;s Mod. In plain terms, it is a compiled <code>gmsv_*<\/code> module \u2014 a chunk of native code, not a Lua script \u2014 that exposes a database API to your server-side Lua. Once it is loaded, any addon can open a connection to a MySQL\/MariaDB server, run queries, and read results back.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">It is popular because it does the things serious persistence needs: it supports multiple result sets, prepared queries, and transactions. That is why DarkRP money\/inventory storage, many admin mods, donation\/perk systems, and custom gamemodes all list MySQLoo as a dependency. If an addon&#8217;s install instructions say &#8220;requires MySQLoo,&#8221; this is the file they mean.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Because it is a compiled binary, you cannot just paste it like a Lua addon. It has to match your server&#8217;s platform exactly \u2014 and that matching is where most failed installs come from.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 1: Identify Your Server&#8217;s OS and Branch<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">MySQLoo ships as four different files. You need exactly one of them, and choosing wrong is the number-one reason the module silently fails to load. Two things decide which file you need:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Operating system<\/strong> \u2014 Windows or Linux.<\/li>\n<li><strong>Server branch \/ architecture<\/strong> \u2014 the standard <code>srcds<\/code> is 32-bit; there is also a 64-bit (x86-64) branch.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">The standard, long-running Garry&#8217;s Mod dedicated server (<code>srcds<\/code>) is 32-bit, which means you use the <code>win32<\/code> \/ <code>linux<\/code> files. If you deliberately run the x86-64 branch, you use the <code>win64<\/code> \/ <code>linux64<\/code> files. If you are not sure which branch you run, you are almost certainly on the standard 32-bit branch \u2014 most hosts default to it.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">The Four Binary Names<\/h3>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Platform<\/th><th>Branch<\/th><th>Filename to download<\/th><\/tr><\/thead><tbody><tr><td>Windows<\/td><td>32-bit (standard srcds)<\/td><td><code>gmsv_mysqloo_win32.dll<\/code><\/td><\/tr><tr><td>Windows<\/td><td>64-bit (x86-64 branch)<\/td><td><code>gmsv_mysqloo_win64.dll<\/code><\/td><\/tr><tr><td>Linux<\/td><td>32-bit (standard srcds)<\/td><td><code>gmsv_mysqloo_linux.dll<\/code><\/td><\/tr><tr><td>Linux<\/td><td>64-bit (x86-64 branch)<\/td><td><code>gmsv_mysqloo_linux64.dll<\/code><\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">A detail that confuses Linux admins: the Linux files still use a <code>.dll<\/code> extension by convention even though they are Linux shared objects, not Windows libraries. Do not rename them to <code>.so<\/code> \u2014 Garry&#8217;s Mod expects the <code>.dll<\/code> name. So a 32-bit Linux server uses <code>gmsv_mysqloo_linux.dll<\/code> exactly as written.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">To summarize the branch rule: standard 32-bit <code>srcds<\/code> \u2192 <code>win32.dll<\/code> or <code>linux.dll<\/code>; the 64-bit branch \u2192 <code>win64.dll<\/code> or <code>linux64.dll<\/code>. Download the single file that matches both your OS and your branch from the official <a href=\"https:\/\/github.com\/FredyH\/MySQLOO\">FredyH\/MySQLOO GitHub releases<\/a>, which is the authoritative source for the module.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 2: Place the Binary in lua\/bin\/<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Garry&#8217;s Mod loads binary modules from one specific folder. The file must go in:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>garrysmod\/lua\/bin\/<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">So the full path to a 32-bit Linux install would be:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>garrysmod\/lua\/bin\/gmsv_mysqloo_linux.dll<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Important:<\/strong> on many fresh server installs the <code>bin<\/code> folder does not exist yet. If you open <code>garrysmod\/lua\/<\/code> and there is no <code>bin<\/code> directory, create it \u2014 the spelling must be exactly <code>bin<\/code>, lowercase, directly inside <code>lua<\/code>. Upload your single <code>gmsv_mysqloo_*<\/code> file into it. You do not need any other files; MySQLoo is self-contained as one binary.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">If your host provides a file manager or FTP access, this is a simple drag-and-drop. If you have shell access, you can drop it in directly. Either way, do not place it loose in <code>garrysmod\/lua\/<\/code> or in an addon folder \u2014 it will not be found there.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 3 (Windows Only): Install the Visual C++ Redistributable<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">This is the single most common reason a correctly-placed Windows binary still refuses to load. MySQLoo&#8217;s Windows build depends on the Microsoft Visual C++ Redistributable runtime. If the matching redist is not installed on the machine, the module fails to load \u2014 usually with no obvious error beyond the addon that depends on it breaking.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>For a <strong>32-bit (win32)<\/strong> server, install the <strong>x86<\/strong> Visual C++ Redistributable.<\/li>\n<li>For a <strong>64-bit (win64)<\/strong> server, install the <strong>x64<\/strong> Visual C++ Redistributable.<\/li>\n<li>The commonly required version is the <strong>VC++ 2015\u20132019<\/strong> redistributable.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If you are on a managed host, the redist is often already present \u2014 but if your Windows install is brand new or self-managed, install it before troubleshooting anything else. Linux servers do not need this step.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Step 4: Restart and Verify It Loaded<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">Binary modules are loaded at server startup, so you must fully restart the server after placing the file \u2014 a map change is not enough. Once it is back up, you can confirm MySQLoo is available by requiring it from the server console (or a quick Lua snippet). In server-side Lua:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>require(\"mysqloo\")\nprint(mysqloo)        -- should print a table, not nil\nprint(mysqloo.VERSION)<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">If <code>require(\"mysqloo\")<\/code> throws an error like &#8220;module not found,&#8221; the binary is in the wrong place, named for the wrong platform\/branch, or (on Windows) the VC++ redist is missing. Work back through Steps 1\u20133 in that order. If it prints a table, the module is live and your addons can use it.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Connecting an Addon (DarkRP Example)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">MySQLoo itself only provides the connection API \u2014 it does not store anything on its own. The addon you installed it for (DarkRP, an admin mod, a perk system) is what actually uses it. Typically you supply the database credentials in that addon&#8217;s configuration: host, port (MySQL default is 3306), username, password, and database name. A minimal raw MySQLoo connection looks like this:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>require(\"mysqloo\")\n\nlocal db = mysqloo.connect(\"127.0.0.1\", \"gmod_user\", \"secret\", \"gmod_db\", 3306)\n\nfunction db:onConnected()\n    print(\"MySQLoo connected to the database.\")\nend\n\nfunction db:onConnectionFailed(err)\n    print(\"MySQLoo connection failed: \" .. err)\nend\n\ndb:connect()<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">For DarkRP specifically, you do not normally write this yourself \u2014 you fill in the MySQL block in DarkRP&#8217;s config and DarkRP calls MySQLoo for you. The key point is that MySQLoo must already be installed and loading before the addon&#8217;s database config will work. Get the binary loading first, then configure the addon. Our <a href=\"https:\/\/xgamingserver.com\/docs\/garrys-mod\">Garry&#8217;s Mod documentation<\/a> covers addon-specific setup in more detail.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Common Install Mistakes<\/h2>\n\n\n\n<figure class=\"wp-block-table is-style-stripes\"><table><thead><tr><th>Symptom<\/th><th>Likely cause<\/th><th>Fix<\/th><\/tr><\/thead><tbody><tr><td>&#8220;module not found&#8221; on require<\/td><td>Wrong folder or no bin folder<\/td><td>File must be in <code>garrysmod\/lua\/bin\/<\/code>; create <code>bin<\/code> if missing<\/td><\/tr><tr><td>Loads on dev box, fails on server<\/td><td>Wrong branch (32 vs 64-bit)<\/td><td>Standard srcds = <code>linux.dll<\/code>\/<code>win32.dll<\/code>; 64-bit branch = <code>linux64.dll<\/code>\/<code>win64.dll<\/code><\/td><\/tr><tr><td>Windows server can&#8217;t load it<\/td><td>Missing VC++ Redistributable<\/td><td>Install matching x86\/x64 VC++ 2015\u20132019 redist<\/td><\/tr><tr><td>Renamed Linux file to .so<\/td><td>Wrong extension<\/td><td>Keep the <code>.dll<\/code> extension on Linux files<\/td><\/tr><\/tbody><\/table><\/figure>\n\n\n\n<p class=\"wp-block-paragraph\">Almost every MySQLoo problem comes down to one of these four. If you methodically check OS, branch, folder, and (on Windows) the redist, the module loads cleanly. Running on quality hardware with an easy file manager makes this trivial \u2014 that is one reason admins choose dedicated <a href=\"https:\/\/xgamingserver.com\/gmod-server-hosting\">Garry&#8217;s Mod hosting built for addon-heavy setups<\/a> rather than fighting a self-managed box.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Where MySQLoo Fits in Your Wider Server Setup<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">MySQLoo is one piece of a properly configured server. Once your database layer is working, the next things most admins set up are administration and security. A few related guides worth bookmarking:<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Lock down who can do what with proper <a href=\"https:\/\/xgamingserver.com\/blog\/how-to-ban-players-from-your-garrys-mod-server\/\">player banning and admin commands<\/a> (vanilla <code>banid<\/code> plus ULX\/SAM).<\/li>\n<li>Set <a href=\"https:\/\/xgamingserver.com\/blog\/how-to-modify-the-rcon-feature-on-your-garrys-mod-server\/\">a strong RCON password<\/a> in <code>server.cfg<\/code> so you can manage the server remotely without exposing it.<\/li>\n<li>Control whether players can fly around your map by <a href=\"https:\/\/xgamingserver.com\/blog\/how-to-disable-noclip-feature-on-your-garrys-mod-server\/\">disabling noclip with <code>sbox_noclip 0<\/code><\/a>.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">With MySQLoo loaded and these basics covered, your DarkRP economy, admin records, and player data will all persist reliably across restarts and map changes \u2014 which is exactly the point of running a database-backed server in the first place.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Frequently Asked Questions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Where do I put the MySQLoo file?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Place the single <code>gmsv_mysqloo_*<\/code> binary in <code>garrysmod\/lua\/bin\/<\/code>. If the <code>bin<\/code> folder does not already exist inside <code>garrysmod\/lua\/<\/code>, create it (lowercase, exact spelling) and drop the file in there.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Which MySQLoo binary should I download?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Match both your OS and server branch. Standard 32-bit <code>srcds<\/code> uses <code>gmsv_mysqloo_win32.dll<\/code> (Windows) or <code>gmsv_mysqloo_linux.dll<\/code> (Linux). The 64-bit x86-64 branch uses <code>gmsv_mysqloo_win64.dll<\/code> or <code>gmsv_mysqloo_linux64.dll<\/code>. Most servers run the standard 32-bit branch.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Why won&#8217;t MySQLoo load on my Windows server?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">The most common cause is a missing Visual C++ Redistributable. Install the matching version \u2014 x86 for a 32-bit server, x64 for a 64-bit server, commonly the VC++ 2015\u20132019 redist \u2014 then restart the server. Without it, the module fails to load even when placed correctly.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Why does the Linux file end in .dll?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">By convention, Garry&#8217;s Mod Linux binary modules use the <code>.dll<\/code> extension even though they are Linux shared objects. Do not rename <code>gmsv_mysqloo_linux.dll<\/code> or <code>gmsv_mysqloo_linux64.dll<\/code> to <code>.so<\/code> \u2014 keep the <code>.dll<\/code> name exactly as downloaded or the module will not be found.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Do I need MySQLoo for DarkRP?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">You need it if you want DarkRP to store data in a MySQL\/MariaDB database rather than the default flat-file storage. DarkRP, many admin mods, and other persistence addons list MySQLoo as a dependency. Install and verify MySQLoo first, then enter your database credentials in the addon&#8217;s config.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">How do I confirm MySQLoo installed correctly?<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Restart the server fully, then run <code>require(\"mysqloo\")<\/code> in server-side Lua and print the <code>mysqloo<\/code> table. If it prints a table (and <code>mysqloo.VERSION<\/code> returns a value) the module is loaded. If you get a &#8220;module not found&#8221; error, recheck the file&#8217;s location, the platform\/branch match, and the Windows VC++ redist.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>If you run DarkRP, an admin mod, or any addon that needs to remember data between map changes and restarts, sooner or later you will hit the same requirement: MySQLoo. It is the bridge that lets your server&#8217;s Lua code talk to a real MySQL or MariaDB database, and it is one of the most [&hellip;]<\/p>\n","protected":false},"author":3,"featured_media":2472,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_gspb_post_css":"","_monsterinsights_skip_tracking":false,"_monsterinsights_sitenote_active":false,"_monsterinsights_sitenote_note":"","_monsterinsights_sitenote_category":0,"jetpack_post_was_ever_published":false,"_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2}},"categories":[40],"tags":[],"class_list":["post-2467","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-gmod-server-docs"],"blocksy_meta":[],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v24.5 (Yoast SEO v26.7) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to add MySQLOO to your Garry\u2019s Mod server - XGamingServer<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to add MySQLOO to your Garry\u2019s Mod server\" \/>\n<meta property=\"og:description\" content=\"If you run DarkRP, an admin mod, or any addon that needs to remember data between map changes and restarts, sooner or later you will hit the same requirement: MySQLoo. It is the bridge that lets your server&#8217;s Lua code talk to a real MySQL or MariaDB database, and it is one of the most [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/\" \/>\n<meta property=\"og:site_name\" content=\"XGamingServer\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/web.facebook.com\/xgamingserver69\/\" \/>\n<meta property=\"article:published_time\" content=\"2023-02-08T22:47:49+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2026-06-15T14:37:42+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png\" \/>\n\t<meta property=\"og:image:width\" content=\"1024\" \/>\n\t<meta property=\"og:image:height\" content=\"576\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/png\" \/>\n<meta name=\"author\" content=\"Youssef Ayman\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@xgamingserver\" \/>\n<meta name=\"twitter:site\" content=\"@xgamingserver\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Youssef Ayman\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/\"},\"author\":{\"name\":\"Youssef Ayman\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/d76089853704ac189e01449b0e449e3e\"},\"headline\":\"How to add MySQLOO to your Garry\u2019s Mod server\",\"datePublished\":\"2023-02-08T22:47:49+00:00\",\"dateModified\":\"2026-06-15T14:37:42+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/\"},\"wordCount\":1560,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/#organization\"},\"image\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png\",\"articleSection\":[\"GMod\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/\",\"url\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/\",\"name\":\"How to add MySQLOO to your Garry\u2019s Mod server - XGamingServer\",\"isPartOf\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/#website\"},\"primaryImageOfPage\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#primaryimage\"},\"image\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#primaryimage\"},\"thumbnailUrl\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png\",\"datePublished\":\"2023-02-08T22:47:49+00:00\",\"dateModified\":\"2026-06-15T14:37:42+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/\"]}]},{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#primaryimage\",\"url\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png\",\"contentUrl\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png\",\"width\":1920,\"height\":1080},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/xgamingserver.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"GMod\",\"item\":\"https:\/\/xgamingserver.com\/blog\/category\/gmod-server-docs\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"How to add MySQLOO to your Garry\u2019s Mod server\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#website\",\"url\":\"https:\/\/xgamingserver.com\/blog\/\",\"name\":\"XGamingServer\",\"description\":\"Dedicated Game Server Hosting\",\"publisher\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/#organization\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/xgamingserver.com\/blog\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#organization\",\"name\":\"XGamingServer\",\"url\":\"https:\/\/xgamingserver.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2020\/09\/logo.svg\",\"contentUrl\":\"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2020\/09\/logo.svg\",\"width\":\"1024\",\"height\":\"1024\",\"caption\":\"XGamingServer\"},\"image\":{\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/web.facebook.com\/xgamingserver69\/\",\"https:\/\/x.com\/xgamingserver\",\"https:\/\/www.instagram.com\/xgamingserver\/\",\"https:\/\/www.linkedin.com\/company\/xgamingserver\/\",\"https:\/\/www.pinterest.com\/xgamingserver\/\",\"https:\/\/www.youtube.com\/channel\/UCHnOtWxpzaL2r3jM9Jm40EQ\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/d76089853704ac189e01449b0e449e3e\",\"name\":\"Youssef Ayman\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/fa92e71017a2bb7ab969b798cba0c8f3f827d2d4733dbe2cacf7f195db920fe1?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/fa92e71017a2bb7ab969b798cba0c8f3f827d2d4733dbe2cacf7f195db920fe1?s=96&d=mm&r=g\",\"caption\":\"Youssef Ayman\"}}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to add MySQLOO to your Garry\u2019s Mod server - XGamingServer","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/","og_locale":"en_US","og_type":"article","og_title":"How to add MySQLOO to your Garry\u2019s Mod server","og_description":"If you run DarkRP, an admin mod, or any addon that needs to remember data between map changes and restarts, sooner or later you will hit the same requirement: MySQLoo. It is the bridge that lets your server&#8217;s Lua code talk to a real MySQL or MariaDB database, and it is one of the most [&hellip;]","og_url":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/","og_site_name":"XGamingServer","article_publisher":"https:\/\/web.facebook.com\/xgamingserver69\/","article_published_time":"2023-02-08T22:47:49+00:00","article_modified_time":"2026-06-15T14:37:42+00:00","og_image":[{"url":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png","width":1024,"height":576,"type":"image\/png"}],"author":"Youssef Ayman","twitter_card":"summary_large_image","twitter_creator":"@xgamingserver","twitter_site":"@xgamingserver","twitter_misc":{"Written by":"Youssef Ayman","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#article","isPartOf":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/"},"author":{"name":"Youssef Ayman","@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/d76089853704ac189e01449b0e449e3e"},"headline":"How to add MySQLOO to your Garry\u2019s Mod server","datePublished":"2023-02-08T22:47:49+00:00","dateModified":"2026-06-15T14:37:42+00:00","mainEntityOfPage":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/"},"wordCount":1560,"commentCount":0,"publisher":{"@id":"https:\/\/xgamingserver.com\/blog\/#organization"},"image":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#primaryimage"},"thumbnailUrl":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png","articleSection":["GMod"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/","url":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/","name":"How to add MySQLOO to your Garry\u2019s Mod server - XGamingServer","isPartOf":{"@id":"https:\/\/xgamingserver.com\/blog\/#website"},"primaryImageOfPage":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#primaryimage"},"image":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#primaryimage"},"thumbnailUrl":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png","datePublished":"2023-02-08T22:47:49+00:00","dateModified":"2026-06-15T14:37:42+00:00","breadcrumb":{"@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/"]}]},{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#primaryimage","url":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png","contentUrl":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png","width":1920,"height":1080},{"@type":"BreadcrumbList","@id":"https:\/\/xgamingserver.com\/blog\/how-to-add-mysqloo-to-your-garrys-mod-server\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/xgamingserver.com\/blog\/"},{"@type":"ListItem","position":2,"name":"GMod","item":"https:\/\/xgamingserver.com\/blog\/category\/gmod-server-docs\/"},{"@type":"ListItem","position":3,"name":"How to add MySQLOO to your Garry\u2019s Mod server"}]},{"@type":"WebSite","@id":"https:\/\/xgamingserver.com\/blog\/#website","url":"https:\/\/xgamingserver.com\/blog\/","name":"XGamingServer","description":"Dedicated Game Server Hosting","publisher":{"@id":"https:\/\/xgamingserver.com\/blog\/#organization"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/xgamingserver.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/xgamingserver.com\/blog\/#organization","name":"XGamingServer","url":"https:\/\/xgamingserver.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2020\/09\/logo.svg","contentUrl":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2020\/09\/logo.svg","width":"1024","height":"1024","caption":"XGamingServer"},"image":{"@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/web.facebook.com\/xgamingserver69\/","https:\/\/x.com\/xgamingserver","https:\/\/www.instagram.com\/xgamingserver\/","https:\/\/www.linkedin.com\/company\/xgamingserver\/","https:\/\/www.pinterest.com\/xgamingserver\/","https:\/\/www.youtube.com\/channel\/UCHnOtWxpzaL2r3jM9Jm40EQ"]},{"@type":"Person","@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/d76089853704ac189e01449b0e449e3e","name":"Youssef Ayman","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/xgamingserver.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/fa92e71017a2bb7ab969b798cba0c8f3f827d2d4733dbe2cacf7f195db920fe1?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/fa92e71017a2bb7ab969b798cba0c8f3f827d2d4733dbe2cacf7f195db920fe1?s=96&d=mm&r=g","caption":"Youssef Ayman"}}]}},"jetpack_publicize_connections":[],"jetpack_featured_media_url":"https:\/\/xgamingserver.com\/blog\/wp-content\/uploads\/2023\/02\/blog-background-12.png","jetpack_sharing_enabled":true,"_links":{"self":[{"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/posts\/2467","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/users\/3"}],"replies":[{"embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/comments?post=2467"}],"version-history":[{"count":2,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/posts\/2467\/revisions"}],"predecessor-version":[{"id":22295,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/posts\/2467\/revisions\/22295"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/media\/2472"}],"wp:attachment":[{"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/media?parent=2467"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/categories?post=2467"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/xgamingserver.com\/blog\/wp-json\/wp\/v2\/tags?post=2467"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}