如何在Ubuntu 18.04/Ubuntu 16.04上安装MariaDB 10.4

时间:2020-02-23 14:40:56  来源:igfitidea点击:

如何在Ubuntu 18.04/Ubuntu 16.04上安装MariaDB 10.4?我可以从APT存储库在Ubuntu 18.04/Ubuntu 16.04上安装MariaDB 10.4吗? MariaDB是MySQL的直接替代品,具有更多功能,新的存储引擎和更好的性能。我们可以从官方上阅读有关MariaDB 10.4的更多功能。

在Ubuntu 18.04/Ubuntu 16.04上安装MariaDB 10.4

要在Ubuntu 18.04/Ubuntu 16.04上安装MariaDB 10.4,我们需要在系统上添加MariaDB存储库。

如果缺少,请安装software-properties-common:

sudo apt update
sudo apt-get install software-properties-common

导入MariaDB gpg密钥:

运行以下命令以将存储库密钥添加到系统

sudo apt-key adv --recv-keys --keyserver hkp://keyserver.ubuntu.com:80 0xF1656F24C74CD1D8

添加apt存储库

导入PGP密钥后,继续添加存储库URL:

sudo add-apt-repository "deb [arch=amd64,arm64,ppc64el] http://mariadb.mirror.liquidtelecom.com/repo/10.4/ubuntu $(lsb_release -cs) main"

如果系统中没有add-apt-repository。 check如何在Debian/Ubuntu 18.04/16.04上安装add-apt-repository

在Ubuntu 18.04/Ubuntu 16.04上安装MariaDB Server

最后一步是安装MariaDB Server:

sudo apt update
sudo apt -y install mariadb-server mariadb-client

系统将提示我们提供MariaDB根密码,执行要设置的密码。

确认密码:

按<确定>确认新密码并安装MariaDB,请确保在我们喜欢的密码管理器中记住或者保留提供的密码。

如果未收到密码设置提示,请手动运行MySQL强化脚本。

$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
haven't set the root password yet, you should just press enter here.

Enter current password for root (enter for none): 
OK, successfully used password, moving on...

Setting the root password or using the unix_socket ensures that nobody
can log into the MariaDB root user without the proper authorisation.

You already have your root account protected, so you can safely answer 'n'.

Switch to unix_socket authentication [Y/n] y
Enabled successfully!
Reloading privilege tables..
 ... Success!

You already have your root account protected, so you can safely answer 'n'.

Change the 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!

该服务应在安装后自动启动。

$sudo systemctl status mysql
* mariadb.service - MariaDB 10.4.1 database server
   Loaded: loaded (/lib/systemd/system/mariadb.service; enabled; vendor preset: enabled)
  Drop-In: /etc/systemd/system/mariadb.service.d
           `-migrated-from-my.cnf-settings.conf
   Active: active (running) since Tue 2016-12-25 08:26:18 PST; 24min ago
     Docs: man:mysqld(8)
           https://mariadb.com/kb/en/library/systemd/
 Main PID: 7564 (mysqld)
   Status: "Taking your SQL requests now..."
    Tasks: 32 (limit: 1110)
   CGroup: /system.slice/mariadb.service
           `-7564 /usr/sbin/mysqld

Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7604]: Running 'mysqlcheck' with connection arguments: --port='3306' --socket='/var/run/mysqld/mysqld
Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7604]: # Connecting to localhost...
Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7604]: # Disconnecting from localhost...
Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7604]: Processing databases
Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7604]: information_schema
Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7604]: performance_schema
Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7604]: Phase 7/7: Running 'FLUSH PRIVILEGES'
Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7604]: OK
Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7706]: Checking for insecure root accounts.
Dec 25 08:26:23 ubuntu-01 /etc/mysql/debian-start[7710]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables

使用mysql命令测试对MariaDB shell的登录:

$mysql -u root -p
Enter password: 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 47
Server version: 10.4.1-MariaDB-1:10.4.1+maria~bionic-log mariadb.org binary distribution

Copyright (c) 2000, 2016, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
MariaDB [(none)]>

使用以下命令检查版本:

MariaDB [(none)]> SELECT VERSION();
+------------------------------------------+
| VERSION()                                |
+------------------------------------------+
| 10.4.1-MariaDB-1:10.4.1+maria~bionic-log |
+------------------------------------------+
1 row in set (0.001 sec)

MariaDB [(none)]> QUIT
Bye

安装桌面数据库管理工具

如果我们不喜欢使用MySQL命令行,请考虑安装和配置DBeaver数据库工具来为我们提供帮助。