MariaDB byla vyvinuta jako softwarový fork MySQL v roce 2009 v reakci na akvizici MySQL společností Oracle. MariaDB má v úmyslu zůstat svobodným a open-source softwarem pod GNU General Public License. Je součástí většiny cloudových nabídek a výchozí ve většině distribucí Linuxu.
V této příručce se naučíme, jak nainstalovat a nakonfigurovat MariaDB v Debianu 11.
Související příspěvky
- Jak nainstalovat Mysql 8 na Rocky Linux/Centos 8
- Jak nainstalovat a nastavit mysql 8 na Ubuntu 20.04
- Jak nainstalovat a nakonfigurovat Mariadb 10 v Debianu 11
Předpoklady
Chcete-li pokračovat, ujistěte se, že máte:
- Aktuální server Ubuntu 20.04
- Kořenový přístup k serveru nebo uživateli s přístupem Sudo
- Přístup k internetu ze serveru
Obsah
- Aktualizovat systém
- Instalace Mariadb
- Konfigurace Mariadb
- Volitelné:Úprava ověření uživatele a oprávnění
- Testování MariaDB
1. Aktualizujte systém
Než budete pokračovat, ujistěte se, že je server Ubuntu aktuální. Nejprve aktualizujte úložiště a poté proveďte aktualizaci systému, abyste zajistili, že všechny nainstalované balíčky jsou aktuální:
Ve svém terminálu zadejte tyto. -y
možnost v apt upgrade
je zajistit, aby se systém nezastavil, abychom mohli přijmout upgrade.
$ sudo apt update
$ sudo apt upgrade -y
2. Instalace mariadb
Mariadb se nachází ve výchozích repozitářích pro debian. K instalaci databázového serveru použijte tento příkaz:
sudo apt install -y mariadb-server
Mariadb se spustí ve výchozím nastavení.
$ sudo systemctl status mariadb
● mariadb.service - MariaDB 10.3.31 database server
Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
Active: active (running) since Sun 2021-11-14 16:48:17 EAT; 43s ago
Docs: man:mysqld(8)
https://mariadb.com/kb/en/library/systemd/
Main PID: 50510 (mysqld)
Status: "Taking your SQL requests now..."
Tasks: 31 (limit: 4631)
Memory: 63.8M
CGroup: /system.slice/mariadb.service
└─50510 /usr/sbin/mysqld
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: Processing databases
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: information_schema
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: mysql
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: performance_schema
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: Phase 6/7: Checking and upgrading tables
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: Processing databases
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: information_schema
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: performance_schema
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: Phase 7/7: Running 'FLUSH PRIVILEGES'
Nov 14 16:48:18 ubuntu-client.citizix.com /etc/mysql/debian-start[50549]: OK
3. Konfigurace MariaDB
U nových instalací MariaDB je dalším krokem spuštění přiloženého bezpečnostního skriptu. Tento skript mění některé méně bezpečné výchozí možnosti. Použijeme jej k zablokování vzdáleného rootu přihlášení a odstranění nepoužívaných uživatelů databáze.
Spusťte bezpečnostní skript:
sudo mysql_secure_installation
To vás provede řadou výzev, kde můžete provést nějaké změny v možnostech zabezpečení instalace MariaDB. První výzva vás požádá o zadání kořenového adresáře aktuální databáze Heslo. Protože jsme ještě žádný nenastavili, stiskněte ENTER
k označení „žádné“.
Další výzva se vás zeptá, zda chcete nastavit databázi root Heslo. Zadejte N
a poté stiskněte ENTER
. V Debianu kořen účet pro MariaDB je úzce svázán s automatizovanou údržbou systému, takže bychom neměli měnit nakonfigurované metody ověřování pro tento účet. Pokud tak učiníte, aktualizace balíčku by mohla narušit databázový systém odebráním přístupu k účtu správce. Později se budeme zabývat tím, jak volitelně nastavit další administrátorský účet pro přístup pomocí hesla, pokud autentizace soketu není pro váš případ použití vhodná.
Odtud můžete stisknout Y
a poté ENTER
přijmout výchozí hodnoty pro všechny následující otázky. Tím se odstraní někteří anonymní uživatelé a testovací databáze, deaktivuje se vzdálený root přihlášení a načtěte tato nová pravidla, aby MariaDB okamžitě respektovala změny, které jste provedli.
Toto je výstup mého serveru
$ sudo mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none):
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] Y
New password:
Re-enter new password:
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] Y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] Y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] Y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] Y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
5. Testování MariaDB
Nyní, když je mariadb vše nastaveno a běží, musíme potvrdit, že může přijímat připojení.
Pro testování se připojte k mariadb s uživatelem root – mysql -h 127.0.0.1 -u root -p
Výstup:
$ mysql -h 127.0.0.1 -u root -p
Enter password:
Welcome to the MariaDB monitor. Commands end with ; or \g.
Your MariaDB connection id is 54
Server version: 10.5.12-MariaDB-0+deb11u1 Debian 11
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>
Zkontrolujte verzi mariadb:
MariaDB [(none)]> SELECT VERSION();
+----------------------------------+
| VERSION() |
+----------------------------------+
| 10.3.31-MariaDB-0ubuntu0.20.04.1 |
+----------------------------------+
1 row in set (0.000 sec)
MariaDB [(none)]>
Pro další kontrolu se můžete zkusit připojit k databázi pomocí mysqladmin
nástroj, což je klient, který umožňuje spouštět administrativní příkazy. Tento příkaz například říká, že se chcete připojit k MariaDB jako root a vraťte verzi pomocí soketu Unix:
sudo mysqladmin version
Měli byste obdržet výstup podobný tomuto:
$ sudo mysqladmin version
mysqladmin Ver 9.1 Distrib 10.3.31-MariaDB, for debian-linux-gnu on x86_64
Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
Server version 10.3.31-MariaDB-0ubuntu0.20.04.1
Protocol version 10
Connection Localhost via UNIX socket
UNIX socket /var/run/mysqld/mysqld.sock
Uptime: 13 min 56 sec
Threads: 6 Questions: 488 Slow queries: 0 Opens: 175 Flush tables: 1 Open tables: 31 Queries per second avg: 0.583
Závěr
V této příručce jste nainstalovali MariaDB, aby fungovala jako SQL server. Během procesu instalace jste také zabezpečili server.