Release Notes for MariaDB Shell 22.12.1
This page is part of MariaDB's MariaDB Documentation.
The parent of this page is: Release Notes for MariaDB Shell 22.12
Topics on this page:
Overview
MariaDB Shell is a command-line tool that unifies troubleshooting and administration for MariaDB database products.
MariaDB Shell 22.12.1 was released on 2023-01-09. This release is a Technical Preview and should not be used in production environments.
Notable Changes
On Linux, the
ros
sub-commands can be used to interact with the Remote Observability Service (ROS). (TENT-208, TENT-233, TENT-240)The
ros install
sub-command can be used to install the components of ROS. For information on how to perform the installation, see "Install MariaDB Agent Manager with MariaDB Shell".For information on all
ros
sub-commands, see "Remote Observability Service Sub-commands for MariaDB Shell".
As a security enhancement, when MariaDB Shell prompts for passwords and other sensitive information, the specified string is not printed to the screen. (TENT-199)
The
ls
anddir
sub-commands can be used to list databases and tables. (TENT-190)For compatibility with
mariadb
client, the-e
and--execute
command-line options can be used to execute queries. (TENT-105)MariaDB Shell enables
autocommit
by default. (TENT-102, TENT-235)SQL files can be executed using standard input redirection. (TENT-29)
The
--protocol
command-line option can be used to select a protocol. (TENT-219)The options are:
mariadb
,mysql
,xpand
,max
,maxscale
By default, the protocol is
mariadb
The
--help
command-line option prints the MariaDB Shell version. (TENT-223)When MariaDB Shell connects using a user with an expired password, MariaDB Shell prompts the user to change their password. (TENT-234)
On Linux distributions, the
mariadb-shell
package is no longer dependent on the package containingmariadb
client, which has a different name on different distributions. (TENT-244)On CentOS, RHEL, and Rocky Linux, the dependency on the
MariaDB-client
package was removed.On Debian and Ubuntu, the dependency on the
mariadb-client
package was removed.
MaxScale CLI integration is supported. (TENT-81)
Hot-swappable output style for queries are supported. (TENT-13)
To hot-swap the output style for a single query, prefix the query with the
output
sub-command:MariaDB (No Database) » output classic SELECT 1;
Output format changed to classic +---+ | 1 | +---+ | 1 | +---+
Issues Fixed
Can result in a hang or crash
MariaDB Shell can crash in certain edge cases when
host
is not configured for the connection. (TENT-211)In previous releases, the following error is raised during the crash:
KeyError: 'host' SLAP (9999) - SeaLion has crashed!
MariaDB Shell can crash in certain edge cases when the
system
orsys
sub-command is used. (TENT-41)In previous releases, the following error is raised during the crash:
IndexError: list index out of range SLAP (9999) - SeaLion has crashed!
MariaDB Shell can crash when the user does not have privileges to execute the
SHOW GRANTS
statement. (TENT-210, TENT-261)When MariaDB Shell streams results, it can consume enough memory to be killed by the operating system's OOM killer. (TENT-246)
Can result in unexpected behavior
When the
profile
sub-command is used to select a profile in an interactive shell, an error is raised. (TENT-204)In previous releases, the following error is raised:
SLHE (0101) - list index out of range
Starting with this release, MariaDB Shell should attempt to connect to the server specified by the profile.
When the
USE
statement raises aERR_BAD_DB_ERROR
error code, the selected database changes toNone
in the prompt. (TENT-198)When Ctrl+c is used in an interactive shell, MariaDB Shell terminates. (TENT-168)
Starting with this release, Ctrl+c should cause MariaDB Shell to stop the currently active command without terminating the program.
When MariaDB Shell is executed via PuTTY and the modern output format is used, result tables are not properly displayed. (TENT-128, TENT-226)
The
warm
sub-command can try to warm a table that does not exist. (TENT-191)When the
max gui start
sub-command fails with adocker.api.client.DockerException
, the error is not shown. (TENT-224)When the
connect
sub-command is used to write connection details to a profile, the plain-text password is printed. (TENT-230)When MariaDB Shell connects to a local database, it can raise errors related to failed
SHOW GRANTS
statements. (TENT-247)
Known Issues
This release of MariaDB Shell fails during execution if the installed MariaDB Connector/C package is the package bundled with MariaDB Enterprise Server. (CONPY-243)
The following error message can occur upon execution:
File "/root/.pyenv/versions/3.10.7/lib/python3.10/site-packages/mariadb/__init__.py", line 136, in <module> File "/root/.pyenv/versions/3.10.7/lib/python3.10/site-packages/mariadb/__init__.py", line 136, in <genexpr> ValueError: invalid literal for int() with base 10: '17-12'
To use this release of MariaDB Shell, ensure that your MariaDB Connector/C package is the package bundled with MariaDB Community Server, which can be installed from the MariaDB Community Repository.
On CentOS, RHEL, and Rocky Linux, the MariaDB Connector/C package is called
MariaDB-shared
.On Debian and Ubuntu, the MariaDB Connector/C package is called
libmariadb3
.
This release of MariaDB Shell fails during execution if the MariaDB Connector/C package is not installed. (CONPY-243)
The following error message can occur upon execution:
File "/root/.pyenv/versions/3.10.7/lib/python3.10/site-packages/mariadb/__init__.py", line 7, in <module> ImportError: libmariadb.so.3: cannot open shared object file: No such file or directory
To use this release of MariaDB Shell, ensure that the MariaDB Connector/C package is installed.
Platforms
MariaDB Shell 22.12.1 is provided for:
Apple macOS (x86_
64, M1) CentOS 7 (x86_
64) Debian 10 (x86_
64) Debian 11 (x86_
64) Microsoft Windows (x86_
64) Red Hat Enterprise Linux 7 (x86_
64) Red Hat Enterprise Linux 8 (x86_
64) Red Hat Enterprise Linux 9 (x86_
64) Rocky Linux 8 (x86_
64) Rocky Linux 9 (x86_
64) Ubuntu 18.04 (x86_
64) Ubuntu 20.04 (x86_
64) Ubuntu 22.04 (x86_
64)