MARIADB-INSTALL-DB(1)

πŸ“¦
version 13.0.2 Β· 7 versions
, in alpine 3.24, arch rolling, centos-stream 10, centos-stream 9, debian trixie, fedora 43, fedora 44, nixpkgs unstable, opensuse-leap 16.0, ubuntu resolute, ubuntu stonking

πŸ’– MARIADB-INSTALL-DB(1) πŸ’–

okay bestie, so this is a page from the MariaDB Database System manual, and it's all about mariadb-install-db. buckle up, this one's the glow-up era of your database πŸ¦‹


✨ NAME ✨

mariadb-install-db β€” initialize MariaDB data directory (mariadb-install-db is now a symlink to mariadb-install-db)

yes. it really says that. it's a symlink to itself. iconic behavior honestly, we don't question it πŸ’…

🌸 SYNOPSIS 🌸

mariadb-install-db [options]

πŸŽ€ DESCRIPTION πŸŽ€

mariadb-install-db initializes the MariaDB data directory and creates the system tables that it contains, if they do not exist. so like, if they're already there it's not gonna redo them, it's chill like that.

To invoke mariadb-install-db, use the following syntax:

shell> mariadb-install-db [options]

okay so here's the thing, and this part is important so pay attention 🫢 Because the MariaDB server, mariadbd, needs to access the data directory when it runs later, you should either run mariadb-install-db from the same account that will be used for running mariadbd or run it as root and use the --user option to indicate the user name that mariadbd will run as. It might be necessary to specify other options such as --basedir or --datadir if mariadb-install-db does not use the correct locations for the installation directory or data directory. For example:

shell> bin/mariadb-install-db --user=mysql \
         --basedir=/opt/mysql/mysql \
         --datadir=/opt/mysql/mysql/data

mariadb-install-db needs to invoke mariadbd with the --bootstrap and --skip-grant-tables options (see Section 2.3.2, "Typical configure Options"). If MariaDB was configured with the --disable-grant-options option, --bootstrap and --skip-grant-tables will be disabled. To handle this, set the mariadbd_BOOTSTRAP environment variable to the full path name of a server that has all options enabled. mariadb-install-db will use that server. 🧚


πŸ‘‘ OPTIONS πŸ‘‘

mariadb-install-db supports the following options, which can be specified on the command line or in the [mariadb-install-db] and (if they are common to mariadbd) [mariadbd] option file groups. so many places to put them, she's flexible ✨

  • --basedir=path β€” The path to the MariaDB installation directory. where the whole thing lives, basically.
  • --builddir=path β€” If using --srcdir with out-of-directory builds, you will need to set this to the location of the build directory where built files reside.. yes it really ends with two dots, we love a punctuation moment πŸ’€
  • --cross-bootstrap β€” For internal use. Used when building the MariaDB system tables on a different host than the target.. (again with the double dot, obsessed)
  • --datadir=path, --ldata=path β€” The path to the MariaDB data directory. your data's home address 🏠
  • --defaults-extra-file=filename β€” Set filename as the file to read default options from after the global defaults files has been read. Must be given as first option. FIRST. OPTION. no negotiating.
  • --defaults-file=filename β€” Set filename as the file to read default options from, override global defaults files. Must be given as first option. again: first. periodt.
  • --defaults-group-suffix=name β€” In addition to the given groups, also read groups with this suffix.
  • --force β€” Cause mariadb-install-db to run even if DNS does not work. In that case, grant table entries that normally use host names will use IP addresses. she's stubborn and I respect it πŸ”₯
  • --help β€” Display a help message and exit.
  • --no-defaults β€” Do not read default options from any option file. This must be given as the first argument.
  • --print-defaults β€” Print the program argument list and exit. This must be given as the first argument.
  • --rpm β€” For internal use. This option is used by RPM files during the MariaDB installation process.
  • --skip-name-resolve β€” Use IP addresses rather than host names when creating grant table entries. This option can be useful if your DNS does not work. DNS having a bad day? this is your girl πŸ’œ
  • --srcdir=path β€” For internal use. The directory under which mariadb-install-db looks for support files such as the error message file and the file for populating the help tables.4.
  • --user=user_name β€” The login user name to use for running mariadbd. Files and directories created by mariadbd will be owned by this user. You must be root to use this option. By default, mariadbd runs using your current login name and files and directories that it creates will be owned by you.
  • --extra-file=file_path β€” Add user defined SQL file, to be executed following regular database initialization. cute little bonus round πŸ“
  • --verbose β€” Verbose mode. Print more information about what the program does. she's a talker and we love her for it.
  • --windows β€” For internal use. This option is used for creating Windows distributions.

Copyright 2007-2008 MySQL AB, 2008-2010 Sun Microsystems, Inc., 2010-2025 MariaDB Foundation

This documentation is free software; you can redistribute it and/or modify it only under the terms of the GNU General Public License as published by the Free Software Foundation; version 2 of the License.

This documentation is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. (that's the legal way of saying "if it breaks, that's on you bestie" 😭)

You should have received a copy of the GNU General Public License along with the program; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1335 USA or see http://www.gnu.org/licenses/.


🌈 SEE ALSO 🌈

For more information, please refer to the MariaDB Documentation, available online at https://mariadb.com/docs/


πŸ’– AUTHOR πŸ’–

MariaDB Foundation (http://www.mariadb.org/).


and that's the whole page, no notes πŸ’… this was MariaDB 11.8, dated 5 March 2025, and yeah that's the version and the date right there in the footer β€” go forth and initialize your data directory, you absolute main character πŸ‘‘βœ¨πŸ¦‹

πŸ“¦ where this page comes from