{"id":12509,"date":"2025-12-20T09:50:05","date_gmt":"2025-12-20T04:20:05","guid":{"rendered":"https:\/\/www.youstable.com\/blog\/?p=12509"},"modified":"2026-09-07T11:10:03","modified_gmt":"2026-09-07T05:40:03","slug":"install-mariadb-on-linux-server","status":"publish","type":"post","link":"https:\/\/www.youstable.com\/blog\/install-mariadb-on-linux-server\/","title":{"rendered":"How to Install MariaDB on Linux Server: Step-by-Step Guide (2026)"},"content":{"rendered":"\n<p class=\"wp-block-paragraph\"><strong>To install MariaDB on a Linux server<\/strong>, update your packages, add the official MariaDB repository (optional), install the mariadb server package with your distro\u2019s package manager, enable and start the service, run mysql_secure_installation to harden, then create a database and user. Commands differ slightly on Ubuntu\/Debian, RHEL\/Rocky, SUSE, and Amazon Linux.<\/p>\n\n\n\n<p class=\"wp-block-paragraph\">Installing MariaDB on a Linux server is straightforward and gives you a fast, open source relational database compatible with MySQL. This guide explains step by step installation for major distributions, security hardening, remote access, performance tuning, backups, and troubleshooting, written from real world server experience so you can go from zero to production ready confidently.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"what-is-mariadb-and-why-install-it-on-linux\"><strong>What Is MariaDB And Why Install It On Linux?<\/strong><\/h2>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>MariaDB is<\/strong> a drop in replacement for MySQL developed by the original MySQL creators. It\u2019s known for reliability, performance, and an open governance model. <\/p>\n\n\n\n<div class=\"wp-block-media-text has-media-on-the-right is-stacked-on-mobile\" style=\"grid-template-columns:auto 40%\"><div class=\"wp-block-media-text__content\">\n<p class=\"wp-block-paragraph\">On Linux, it integrates cleanly with systemd, package managers, and security frameworks (SELinux\/AppArmor), making it the default database choice for many web apps, CMSs (including WordPress), and analytics workloads.<\/p>\n<\/div><figure class=\"wp-block-media-text__media\"><img loading=\"lazy\" decoding=\"async\" width=\"924\" height=\"827\" src=\"https:\/\/www.youstable.com\/blog\/wp-content\/uploads\/2025\/12\/What-Is-MariaDB-And-Why-Install-It-On-Linux.webp\" alt=\"What Is MariaDB And Why Install It On Linux\" class=\"wp-image-19846 size-full\"\/><\/figure><\/div>\n\n\n\n<h4 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"prerequisites\">Prerequisites<\/h4>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Before you begin, ensure:<\/strong><\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Supported Linux distro (Ubuntu\/Debian, RHEL\/Rocky\/AlmaLinux, SUSE, Amazon Linux)<\/li>\n\n\n\n<li>Root or sudo access<\/li>\n\n\n\n<li>Outbound internet access (to fetch packages)<\/li>\n\n\n\n<li>Open TCP port 3306 if remote clients will connect<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"choose-your-install-source-distro-repo-vs-mariadb-repository\">Choose Your Install Source: Distro Repo vs MariaDB Repository<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You can install MariaDB from your distribution\u2019s repository (stable, tightly integrated) or from the official MariaDB Repository (newer features and LTS lines such as 10.11\/11.4). For most users, distro packages are fine; for advanced features or newer versions, use the MariaDB repo.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"install-mariadb-on-major-linux-distributions\">Install MariaDB On Major Linux Distributions<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"ubuntu-22-04-24-04-and-debian-11-12-distro-packages\">Ubuntu 22.04\/24.04 and Debian 11\/12 (Distro Packages)<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt update\nsudo apt install -y mariadb-server\nsudo systemctl enable --now mariadb\nsudo mysql_secure_installation\nmariadb --version<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Tip:<\/strong> On Ubuntu\/Debian, the root database account often uses unix_socket authentication. Use sudo mariadb to log in as root without a password.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"ubuntu-debian-mariadb-official-repository\">Ubuntu\/Debian (MariaDB Official Repository)<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo apt update\nsudo apt install -y curl ca-certificates gnupg\ncurl -LsS https:\/\/downloads.mariadb.com\/MariaDB\/mariadb_repo_setup | sudo bash\nsudo apt update\nsudo apt install -y mariadb-server\nsudo systemctl enable --now mariadb\nsudo mysql_secure_installation<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"rhel-8-9-rocky-linux-almalinux-distro-or-mariadb-repo\">RHEL 8\/9, Rocky Linux, AlmaLinux (Distro or MariaDB Repo)<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Option A: MariaDB official repository\nsudo dnf install -y curl\ncurl -LsS https:\/\/downloads.mariadb.com\/MariaDB\/mariadb_repo_setup | sudo bash\nsudo dnf install -y MariaDB-server MariaDB-client\n\n# Option B: Distro-provided packages (names may vary)\n# sudo dnf install -y mariadb-server\n\nsudo systemctl enable --now mariadb\nsudo mysql_secure_installation\nmariadb --version<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"amazon-linux-2-2023\">Amazon Linux 2\/2023<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Amazon Linux 2\nsudo yum install -y mariadb-server\nsudo systemctl enable --now mariadb\nsudo mysql_secure_installation\n\n# Amazon Linux 2023 (dnf)\n# sudo dnf install -y mariadb-server\n# sudo systemctl enable --now mariadb\n# sudo mysql_secure_installation<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"opensuse-sles\">openSUSE\/SLES<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo zypper refresh\nsudo zypper install -y mariadb\nsudo systemctl enable --now mariadb\nsudo mysql_secure_installation<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"secure-the-installation\">Secure The Installation<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">mysql_secure_installation helps remove unsafe defaults and set authentication options. During prompts, choose strong settings.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Remove anonymous users<\/li>\n\n\n\n<li>Disallow remote root login<\/li>\n\n\n\n<li>Remove test database<\/li>\n\n\n\n<li>Reload privilege tables<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If your distro uses unix_socket for root (Ubuntu\/Debian), prefer creating a separate admin user rather than changing root auth:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo mariadb\nCREATE USER 'dbadmin'@'localhost' IDENTIFIED BY 'Strong!Passw0rd';\nGRANT ALL PRIVILEGES ON *.* TO 'dbadmin'@'localhost' WITH GRANT OPTION;\nFLUSH PRIVILEGES;<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"create-a-database-and-app-user\">Create A Database And App User<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo mariadb\nCREATE DATABASE appdb DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;\nCREATE USER 'appuser'@'%' IDENTIFIED BY 'Another$trongP@ss';\nGRANT ALL PRIVILEGES ON appdb.* TO 'appuser'@'%';\nFLUSH PRIVILEGES;<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Using % allows connections from any host. For tighter security, replace % with a specific IP or subnet (for example, &#8216;appuser&#8217;@&#8217;192.0.2.%&#8217;).<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"allow-remote-connections-optional\">Allow Remote Connections (Optional)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">For remote access, configure MariaDB to listen on the network interface and open firewalls. Only enable this if needed; otherwise, keep it local for better security.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"1-bind-address\">1) Bind Address<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Edit the server configuration (path depends on distro):<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Debian\/Ubuntu:<\/strong> \/etc\/mysql\/mariadb.conf.d\/50-server.cnf<\/li>\n\n\n\n<li><strong>RHEL\/Rocky\/AlmaLinux:<\/strong> \/etc\/my.cnf.d\/server.cnf or \/etc\/my.cnf<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;mysqld]\nbind-address = 0.0.0.0\nport = 3306<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Then restart:<\/strong><\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl restart mariadb<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"2-open-the-firewall\">2) Open The Firewall<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># UFW (Ubuntu)\nsudo ufw allow 3306\/tcp\n\n# firewalld (RHEL\/Rocky\/AlmaLinux)\nsudo firewall-cmd --add-service=mysql --permanent\nsudo firewall-cmd --reload<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>SELinux: <\/strong>Default port 3306 is allowed. If you change the port, label it:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo semanage port -a -t mysqld_port_t -p tcp 3307\nsudo systemctl restart mariadb<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"service-management-and-logs\">Service Management And Logs<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Service control\nsudo systemctl status mariadb\nsudo systemctl restart mariadb\nsudo systemctl enable --now mariadb\n\n# Logs (vary by distro)\n# Debian\/Ubuntu\nsudo tail -n 100 \/var\/log\/mysql\/error.log\n# RHEL\/Rocky\/AlmaLinux\nsudo tail -n 100 \/var\/log\/mariadb\/mariadb.log\n# Journal\nsudo journalctl -u mariadb --no-pager -e<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"performance-tuning-essentials\">Performance Tuning Essentials<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">Start with sensible defaults, then tune iteratively based on workload and metrics. Edit your main server config and restart.<\/p>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>innodb_buffer_pool_size:<\/strong> If MariaDB is dedicated, set to ~50\u201370% of RAM.<\/li>\n\n\n\n<li><strong>innodb_flush_log_at_trx_commit:<\/strong> 1 for full durability (default), 2 for better performance with slightly less durability.<\/li>\n\n\n\n<li><strong>max_connections:<\/strong> Size to expected concurrency (for example, 200); ensure OS and hardware can handle it.<\/li>\n\n\n\n<li><strong>tmp_table_size and max_heap_table_size:<\/strong> Increase to reduce on disk temp tables (keep values equal).<\/li>\n\n\n\n<li><strong>slow query log:<\/strong> Enable to catch problematic queries and add indexes where needed.<\/li>\n<\/ul>\n\n\n\n<pre class=\"wp-block-code\"><code>&#91;mysqld]\ninnodb_buffer_pool_size = 4G\ninnodb_flush_log_at_trx_commit = 1\nmax_connections = 200\ntmp_table_size = 256M\nmax_heap_table_size = 256M\nslow_query_log = 1\nslow_query_log_file = \/var\/log\/mysql\/slow.log\nlong_query_time = 1<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\"><strong>Note: <\/strong>MariaDB retained the old Query Cache longer than MySQL, but it\u2019s not recommended for modern workloads. Focus on indexes, schema, and buffer sizing instead.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"backups-and-restore-practical-options\">Backups And Restore (Practical Options)<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">For small to medium databases and simple workflows, mysqldump is easy and reliable. For large, hot backups, consider mariabackup (hot physical backup tool from MariaDB).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"logical-backup-with-mysqldump\">Logical Backup With mysqldump<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Single database (consistent InnoDB snapshot)\nmysqldump -u root -p --single-transaction --routines --triggers appdb &gt; appdb_$(date +%F).sql\n\n# All databases\nmysqldump -u root -p --single-transaction --routines --triggers --events --all-databases &gt; full_$(date +%F).sql<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"restore\">Restore<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>mysql -u root -p appdb &lt; appdb_2025-01-01.sql\n# Or for full dump:\nmysql -u root -p &lt; full_2025-01-01.sql<\/code><\/pre>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"troubleshooting-common-issues\">Troubleshooting Common Issues<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"access-denied-for-user-rootatlocalhost\">\u201cAccess denied for user &#8216;root&#8217;@&#8217;localhost&#8217;\u201d<\/h3>\n\n\n\n<p class=\"wp-block-paragraph\">On Ubuntu\/Debian, use sudo mariadb to log in as root via socket auth. If you need a passworded root or a new admin user, create it as shown above.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"cant-connect-to-local-mysql-server-through-socket\">\u201cCan&#8217;t connect to local MySQL server through socket\u201d<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><strong>Check service:<\/strong> sudo systemctl status mariadb<\/li>\n\n\n\n<li>Verify socket path matches the client config (for example, \/var\/run\/mysqld\/mysqld.sock)<\/li>\n\n\n\n<li>Review error logs for crashes or permission problems<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"reset-root-password-emergency\">Reset Root Password (Emergency)<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code>sudo systemctl stop mariadb\nsudo mysqld_safe --skip-grant-tables --skip-networking &amp;\n# In another terminal:\nmariadb\nFLUSH PRIVILEGES;\nALTER USER 'root'@'localhost' IDENTIFIED BY 'New!SuperSecurePass';\nFLUSH PRIVILEGES;\n# Stop the safe server and start normally\nsudo pkill -f mysqld_safe\nsudo pkill -f mysqld\nsudo systemctl start mariadb<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"production-hardening-checklist\">Production Hardening Checklist<\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Disable or remove any <strong>&#8216;root&#8217;@&#8217;%<\/strong>&#8216; accounts; never expose root remotely.<\/li>\n\n\n\n<li>Grant least privilege to app users (only the specific database, no global admin).<\/li>\n\n\n\n<li>Restrict network access to trusted hosts and subnets; use firewalls and security groups.<\/li>\n\n\n\n<li>Enforce strong passwords and consider PAM\/LDAP integration if needed.<\/li>\n\n\n\n<li>Enable regular backups and test restores.<\/li>\n\n\n\n<li>Monitor with metrics and logs (Prometheus exporters, slow log analysis).<\/li>\n\n\n\n<li>Keep OS and MariaDB patched; schedule maintenance windows.<\/li>\n<\/ul>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"upgrade-and-uninstall\">Upgrade And Uninstall<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"upgrade\">Upgrade<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Ubuntu\/Debian (distro repo or MariaDB repo)\nsudo apt update\nsudo apt install -y mariadb-server\n\n# RHEL\/Rocky\/AlmaLinux\nsudo dnf upgrade -y MariaDB-server MariaDB-client\n\n# After package upgrade\nsudo systemctl restart mariadb\nmariadb --version<\/code><\/pre>\n\n\n\n<h3 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"uninstall-with-caution\">Uninstall (with caution)<\/h3>\n\n\n\n<pre class=\"wp-block-code\"><code># Ubuntu\/Debian\nsudo apt remove --purge -y mariadb-server mariadb-client\nsudo rm -rf \/var\/lib\/mysql \/etc\/mysql\n\n# RHEL\/Rocky\/AlmaLinux\nsudo dnf remove -y MariaDB-server MariaDB-client\nsudo rm -rf \/var\/lib\/mysql \/etc\/my.cnf \/etc\/my.cnf.d<\/code><\/pre>\n\n\n\n<p class=\"wp-block-paragraph\">Always back up data before removing packages or directories.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"real-world-tips-from-hosting\">Real World Tips From Hosting<\/h2>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Use utf8mb4 across the board for correct Unicode support (emojis, multi language).<\/li>\n\n\n\n<li>Separate data from the OS disk for performance and easier migration; ensure correct ownership and SELinux\/AppArmor contexts.<\/li>\n\n\n\n<li>Benchmark changes (sysbench) before\/after tuning to avoid regressions.<\/li>\n\n\n\n<li>For WordPress, optimize indexes on wp_options autoloaded rows and keep plugins lean.<\/li>\n\n\n\n<li>Consider high availability with Galera Cluster when you need writes on multiple nodes.<\/li>\n<\/ul>\n\n\n\n<p class=\"wp-block-paragraph\">If you prefer expert managed setup, <a href=\"https:\/\/www.youstable.com\/blog\/benefits-of-fully-managed-dedicated-server\/\">YouStable\u2019s managed VPS and dedicated servers<\/a> can provision, secure, and monitor MariaDB for you, so you focus on your application while we handle uptime, backups, and scaling.<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"faqs\">FAQs<\/h2>\n\n\n<div id=\"rank-math-faq\" class=\"rank-math-block\">\n<div class=\"rank-math-list \">\n<div id=\"faq-question-1765520055032\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"which-mariadb-version-should-i-install\">Which MariaDB version should I install?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Use your distro\u2019s default for stability or the MariaDB Repository for newer features. Prefer an active LTS branch (for example, 10.11 or 11.4 at the time of writing) for long term support in production.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765520072687\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"how-do-i-allow-remote-connections-safely\">How do I allow remote connections safely?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Set bind-address = 0.0.0.0 (or a specific IP), create users restricted by host\/IP, and open only necessary firewall rules. Consider VPN or u003ca href=u0022https:\/\/www.youstable.com\/blog\/how-to-enable-ssh-access-for-clients-or-users\/u0022u003eSSH tunnels for administrative accessu003c\/au003e and never expose root remotely.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765520079533\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"whats-the-difference-between-mariadb-and-mysql\">What\u2019s the difference between MariaDB and MySQL?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>MariaDB is a community driven fork of MySQL with compatible client\/server protocols and tools. It includes additional engines and features and follows an open development model. Many apps work interchangeably, but always test for version specific features or syntax differences.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765520187518\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"u003cstrongu003ehow-do-i-back-up-mariadb-on-a-scheduleu003c-strongu003e\">u003cstrongu003eHow do I back up MariaDB on a schedule?u003c\/strongu003e<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>Use mysqldump in a cron job for logical backups or mariabackup for hot physical backups. Store backups off server, encrypt them, and test restores regularly to validate recovery time and integrity.<\/p>\n\n<\/div>\n<\/div>\n<div id=\"faq-question-1765520195234\" class=\"rank-math-list-item\">\n<h3 class=\"rank-math-question \" class=\"rank-math-question \" id=\"is-mariadb-good-for-wordpress-and-ecommerce\">Is MariaDB good for WordPress and eCommerce?<\/h3>\n<div class=\"rank-math-answer \">\n\n<p>u003cstrongu003eYesu003c\/strongu003e. MariaDB powers millions of WordPress and WooCommerce sites. Use utf8mb4, enable slow query logging, keep plugins lean, and size innodb_buffer_pool appropriately. Consider read replicas or a Galera cluster as traffic grows.<\/p>\n\n<\/div>\n<\/div>\n<\/div>\n<\/div>\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity is-style-wide\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" class=\"wp-block-heading\" id=\"conclusion\">Conclusion<\/h2>\n\n\n\n<p class=\"wp-block-paragraph\">You\u2019ve learned how to install MariaDB on a Linux server, lock it down, enable remote access, tune performance, and set up backups. Start with the distro packages for simplicity or use the MariaDB repo for newer LTS features. If you want a hands free, optimized setup, YouStable can manage, monitor, and scale MariaDB for you.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>To install MariaDB on a Linux server, update your packages, add the official MariaDB repository (optional), install the mariadb server [&hellip;]<\/p>\n","protected":false},"author":13,"featured_media":15427,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_acf_changed":false,"inline_featured_image":false,"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"iawp_total_views":164,"footnotes":""},"categories":[1134,2261,350],"tags":[],"class_list":["post-12509","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-linux","category-kb-databases","category-knowledgebase"],"acf":[],"_links":{"self":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/12509","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/users\/13"}],"replies":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/comments?post=12509"}],"version-history":[{"count":1,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/12509\/revisions"}],"predecessor-version":[{"id":23147,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/posts\/12509\/revisions\/23147"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media\/15427"}],"wp:attachment":[{"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/media?parent=12509"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/categories?post=12509"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.youstable.com\/blog\/wp-json\/wp\/v2\/tags?post=12509"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}