如何在Ubuntu 20.04(Focal Fossa)上安装MariaDB 10.5

这是续集。
请从下面的链接下载并以PDF格式支持本文。

以PDF格式下载指南

关门
这是续集。

这是续集。
这是续集。

如何在Ubuntu 20.04(Focal Fossa)服务器上安装MariaDB 10.5? MariaDB是MySQL数据库服务器的流行替代产品,具有更多功能,新的存储引擎和更好的性能。您可以查看的完整列表 MariaDB 10.5功能 从官方网站。 MariaDB数据库服务器根据通用公共许可证版本2作为免费的开源软件发布。

在Ubuntu 20.04 LTS上安装MariaDB 10.5

要在Ubuntu 20.04上安装MariaDB 10.5,您需要将MariaDB存储库添加到系统中。之后,从添加的APT存储库中可以很好地在Ubuntu 20.04上安装MariaDB 10.5。

步骤1:更新系统

确保系统已更新并安装software-properties-common软件包。

sudo apt update && sudo apt upgrade
sudo apt -y install software-properties-common

步骤2:导入MariaDB gpg密钥:

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

sudo apt-key adv --fetch-keys 'https://mariadb.org/mariadb_release_signing_key.asc'

步骤3:添加MariaDB APT存储库

导入存储库GPG密钥后,运行以下命令以添加APT存储库:

sudo add-apt-repository 'deb [arch=amd64] http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal main'

命令执行输出:

Hit:1 http://security.ubuntu.com/ubuntu focal-security InRelease
Hit:2 http://nova.clouds.archive.ubuntu.com/ubuntu focal InRelease        
Get:3 http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal InRelease [3202 B]
Hit:4 http://nova.clouds.archive.ubuntu.com/ubuntu focal-updates InRelease
Hit:5 http://nova.clouds.archive.ubuntu.com/ubuntu focal-backports InRelease
Get:6 http://mariadb.mirror.globo.tech/repo/10.5/ubuntu focal/main amd64 Packages [7924 B]
Fetched 11.1 kB in 1s (15.6 kB/s)
Reading package lists... Done

步骤4:在20.04 Linux上安装MariaDB Server

最后一步是安装MariaDB服务器。

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

命中 ÿ 在Ubuntu 20.04 Linux上接受MariaDB 10.5安装的密钥。

The following additional packages will be installed:
  galera-4 libcgi-fast-perl libcgi-pm-perl libdbd-mariadb-perl libdbi-perl libencode-locale-perl libfcgi-perl libhtml-parser-perl libhtml-tagset-perl
  libhtml-template-perl libhttp-date-perl libhttp-message-perl libio-html-perl liblwp-mediatypes-perl libmariadb3 libmysqlclient21
  libterm-readkey-perl libtimedate-perl liburi-perl mariadb-client-10.5 mariadb-client-core-10.5 mariadb-common mariadb-server-10.5
  mariadb-server-core-10.5 mysql-common socat
Suggested packages:
  libclone-perl libmldbm-perl libnet-daemon-perl libsql-statement-perl libdata-dump-perl libipc-sharedcache-perl libwww-perl mailx mariadb-test
  tinyca
The following NEW packages will be installed:
  galera-4 libcgi-fast-perl libcgi-pm-perl libdbd-mariadb-perl libdbi-perl libencode-locale-perl libfcgi-perl libhtml-parser-perl libhtml-tagset-perl
  libhtml-template-perl libhttp-date-perl libhttp-message-perl libio-html-perl liblwp-mediatypes-perl libmariadb3 libmysqlclient21
  libterm-readkey-perl libtimedate-perl liburi-perl mariadb-client mariadb-client-10.5 mariadb-client-core-10.5 mariadb-common mariadb-server
  mariadb-server-10.5 mariadb-server-core-10.5 mysql-common socat
0 upgraded, 28 newly installed, 0 to remove and 0 not upgraded.
Need to get 29.5 MB of archives.
After this operation, 229 MB of additional disk space will be used.
Do you want to continue? [Y/n] y

步骤5:在20.04 Linux上保护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!

安装后,数据库服务将自动启动。

$  systemctl status mysql
● mariadb.service - MariaDB 10.5.2 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 Sat 2020-04-25 23:57:39 UTC; 2min 8s ago
       Docs: man:mysqld(8)
             https://mariadb.com/kb/en/library/systemd/
   Main PID: 4309 (mysqld)
     Status: "Taking your SQL requests now..."
      Tasks: 11 (limit: 2344)
     Memory: 82.5M
     CGroup: /system.slice/mariadb.service
             └─4309 /usr/sbin/mysqld

Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: mysql
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: performance_schema
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: Phase 6/7: Checking and upgrading tables
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: Processing databases
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: information_schema
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: performance_schema
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: Phase 7/7: Running 'FLUSH PRIVILEGES'
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[4332]: OK
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[5138]: Checking for insecure root accounts.
Apr 25 23:57:44 ubuntu20 /etc/mysql/debian-start[5142]: Triggering myisam-recover for all MyISAM tables and aria-recover for all Aria tables

使用以下命令测试对MariaDB Shell的登录 mysql 命令:

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

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)]> 

使用以下命令检查版本:

MariaDB [(none)]> SELECT VERSION();
+-----------------------------------------+
| VERSION() |
+-----------------------------------------+
| 10.5.2-MariaDB-1:10.5.2+maria~focal-log |
+-----------------------------------------+
1 row in set (0.000 sec)
MariaDB [(none)]>

步骤5:安装桌面数据库管理工具

如果使用MySQL命令行比较麻烦,请考虑安装数据库工具。查看以下指南:

在Ubuntu上安装和配置DBeaver

适合阅读的MySQL书籍:

  • SQL简介 –针对初学者的动手方法–快速,准确地介绍SQL的实际含义。在这里,您将找到该语言所有基础知识的简要介绍。
  • 头先SQL – SQL Brain –学习者指南。
  • SQL Cookbook:查询解决方案和数据库 针对数据库开发人员的技术–本书包含许多技巧和技巧,可用于日常数据库管理。
  • 关于MS SQL Server –一本相当古老的书,但从较高的角度涵盖了SQL Server的所有方面。
  • 有效的SQL –一本易于阅读的指南,探讨了SQL功能。请记住,应用布局的想法可能需要一些SQL知识。

这是续集。
请从下面的链接下载并以PDF格式支持本文。

以PDF格式下载指南

关门
这是续集。

这是续集。
这是续集。

Sidebar