如何在Kali Linux上安装MariaDB 10.4
时间:2020-02-23 14:40:56 来源:igfitidea点击:
在今天的教程中,很好地讨论了如何在Kali Linux(2017.x)版本上安装MariaDB 10.4. MariaDB是MySQL的直接替代品,具有更多功能,新的存储引擎和更好的性能。我们可以从项目上获取MariaDB 10.4功能的所有详细信息。
在撰写本文时,MariaDB 10.4是可在Linux和某些BSD系统上安装的MariaDB数据库管理系统的最新稳定版本。在Kali Linux上安装MariaDB之前,我们将添加官方的MariaDB apt存储库,然后从中安装所有依赖项和实际的MariaDB软件包。
更新系统
确保我们的系统已更新。
sudo apt update
如果可以更新所有已安装的软件包,则可以运行upgrade命令,然后重新引导系统。
sudo apt upgrade sudo reboot
将MariaDB APT存储库添加到Kali Linux
好用Debian 10(Buster)的MariaDB apt存储库。确保安装以下软件依赖项。
sudo apt -y install software-properties-common gnupg2
然后将MariaDB APT存储库添加到Kali Linux。
sudo apt-key adv --recv-keys --keyserver keyserver.ubuntu.com 0xF1656F24C74CD1D8 echo "deb [arch=amd64] http://mariadb.mirror.liquidtelecom.com/repo/10.4/debian buster main" | sudo tee /etc/apt/sources.list.d/mariadb.list
然后在Kali Linux上实际安装MariaDB之前更新APT索引。
$sudo apt update Get:1 http://mariadb.mirror.liquidtelecom.com/repo/10.4/debian buster InRelease [3,154 B] Get:2 http://mariadb.mirror.liquidtelecom.com/repo/10.4/debian buster/main amd64 Packages [28.0 kB] Hit:3 http://kali.download/kali kali-rolling InRelease Fetched 31.1 kB in 1s (29.4 kB/s) Reading package lists... Done Building dependency tree Reading state information... Done 839 packages can be upgraded. Run 'apt list --upgradable' to see them.
在Kali Linux上安装MariaDB 10.4
添加存储库后,我们可以使用apt软件包管理器在Kali Linux上安装MariaDB 10.4服务器和客户端软件包。
sudo apt update sudo apt install mariadb-server mariadb-client
如果我们安装了mysql-common软件包,则可能必须将其删除。
sudo apt remove mysql-common
当提示我们开始安装时,请按键盘上的y键。
Reading package lists... Done Building dependency tree Reading state information... Done The following package was automatically installed and is no longer required: libconfig-inifiles-perl Use 'sudo apt autoremove' to remove it. The following additional packages will be installed: galera-4 mariadb-client-10.4 mariadb-client-core-10.4 mariadb-common mariadb-server-10.4 mariadb-server-core-10.4 Suggested packages: mailx mariadb-test netcat-openbsd tinyca The following packages will be REMOVED: default-mysql-server galera-3 mariadb-client-10.3 mariadb-client-core-10.3 mariadb-server-10.3 mariadb-server-core-10.3 The following NEW packages will be installed: galera-4 mariadb-client mariadb-client-10.4 mariadb-client-core-10.4 mariadb-server mariadb-server-10.4 mariadb-server-core-10.4 The following packages will be upgraded: mariadb-common 1 upgraded, 7 newly installed, 6 to remove and 838 not upgraded. Need to get 25.0 MB of archives. After this operation, 47.5 MB of additional disk space will be used. Do you want to continue? [Y/n] y
安装后启动并启用mariadb服务。
sudo systemctl enable --now mariadb
确认服务已启动。
保护MariaDB服务器
现在,运行安全脚本来设置root密码,删除测试数据库并禁用远程root用户登录。
$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!
现在,我们需要提供用户名和密码才能访问MySQL控制台。没有身份验证,我们将获得拒绝访问错误。
$mysql -u root ERROR 1698 (28000): Access denied for user 'root'@'localhost'
使用-p选项进行身份验证。
$mysql -u root -p Enter password: Welcome to the MariaDB monitor. Commands end with ; or \g. Your MariaDB connection id is 59 Server version: 10.4.12-MariaDB-1:10.4.12+maria~buster-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)]> SELECT VERSION(); +--------------------------------------------+ | VERSION() | +--------------------------------------------+ | 10.4.12-MariaDB-1:10.4.12+maria~buster-log | +--------------------------------------------+ 1 row in set (0.000 sec)