在linux上安装并初始化配置MariaDB支持远程登录

这篇具有很好参考价值的文章主要介绍了在linux上安装并初始化配置MariaDB支持远程登录。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、环境准备

本文环境是Redhat7上自带的MariaDB, 在安装redhat系统时已经自动安装好了,如果需要自行安装的话,可以到MariaDB官方网站获取安装方式。

MariaDB官方网站点此进入

点击Download按钮进入下载页

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

根据自己的需要选择安装方式,这里以Repo安装为例, 大体步骤就是选择对应的版本,配置镜像源,最后使用yum安装即可:

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

二、启动MariaDB

安装完成后,使用root账号启动MariaDB

[root@192 ~]# systemctl start mariadb

尝试连接服务器,看是否启动成功, 然后exit退出

[root@192 ~]# mysql

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

三、初始化MariaDB

我们可以先看下mysql相关的命令, 它们位于/bin目录下

[root@192 ~]# ll /bin/ | grep mysql

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

我们使用mysql_secure_installation来完成初始化, 根据交互提示一步步操作即可

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

此时,切换回普通用户,尝试连接数据库,可以看到已经可以访问了。

[hubing@192 ~]$ mysql -hlocalhost -uroot -p -P3306

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

四、配置远程访问

严格来讲,出于安全考虑,root账号只能在服务器上使用,不允许通过网络进行远程登录。所以本节的内容并不是必须的。只是做一下示范,对于其他的非root用户,是允许远程访问的,那么便可以依葫芦画瓢进行配置。

在上面的初始化过程中,我们虽然没有禁止远程使用MariaDB的root账号访问数据库,但实际上此时我们远程访问确实是访问不了的。

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

尝试远程使用数据库root账号登录数据库服务器192.168.233.129失败, 提示:

ERROR 2003 (HY000): Can't connect to MySQL server on '192.168.233.129:3306' (10060)

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

我们可以ping通数据库服务器,只是无法连接,说明还有某些安全策略禁止了我们的访问。

我们还切换到数据库服务器192.168.233.129上进行操作。

先登录上数据库:

[hubing@192 ~]$ mysql -hlocalhost -uroot -p -P3306

然后切换到mysql db

MariaDB [(none)]> use mysql;

查表获取当前的配置信息:

MariaDB [mysql]> select host, user from user;

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

可以看到这里并没有允许远程连接,需要授权root用户的所有权限并设置远程访问。

依次执行:

//任何远程主机都可以使用root账号访问数据库
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'root密码';

//刷新以便立即生效
FLUSH PRIVILEGES;

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

如果防火墙没开放3306端口的话,还需要通过root用户将3306端口配置为防火墙例外。

[root@192 ~]# firewall-cmd --zone=public --add-port=3306/tcp --permanent
[root@192 ~]# firewall-cmd --reload
[root@192 ~]# firewall-cmd --list-ports

mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库

此时再次尝试远程登录数据库,已经可以成功进行登录了。
mariadb开启远程连接,数据库,Linux,linux,mariadb,服务器,mysql,数据库文章来源地址https://www.toymoban.com/news/detail-759316.html

五、补充一些额外的MySql用户赋权限的语句

-- 说明
-- {user} 替换为实际的用户名
-- {passwd} 替换为实际的用户密码
-- {otherUser} 替换为其他用户的用户名
-- {otherPasswd} 替换为其他用户的密码

GRANT ALL ON {user}.* TO '{user}'@'%' IDENTIFIED BY '{passwd}';
GRANT ALL ON {user}.* TO '{user}'@'127.0.0.1' IDENTIFIED BY '{passwd}';
GRANT ALL ON {user}.* TO '{user}'@'localhost' IDENTIFIED BY '{passwd}';
GRANT SELECT ON mysql.* TO '{user}'@'%' IDENTIFIED BY '{passwd}';
GRANT PROCESS,FILE,SUPER,REPLICATION CLIENT,REPLICATION SLAVE  ON *.* to '{user}'@'%' IDENTIFIED BY '{passwd}';
GRANT PROCESS,FILE,SUPER,REPLICATION CLIENT,REPLICATION SLAVE  ON *.* to '{user}'@'127.0.0.1' IDENTIFIED BY '{passwd}';
GRANT PROCESS,FILE,SUPER,REPLICATION CLIENT,REPLICATION SLAVE  ON *.* to '{user}'@'localhost' IDENTIFIED BY '{passwd}';

-- 将本库的部分权限赋予其他用户,复制以下语句,对其他用户进行赋权,包括各个分库和查询库
GRANT SELECT ON {user}.* to '{otherUser}'@'%' IDENTIFIED BY '{otherPasswd}';
GRANT SELECT ON {user}.* to '{otherUser}'@'127.0.0.1' IDENTIFIED BY '{otherPasswd}';
GRANT SELECT ON {user}.* to '{otherUser}'@'localhost' IDENTIFIED BY '{otherPasswd}';

到了这里,关于在linux上安装并初始化配置MariaDB支持远程登录的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Linux:Linux初始化配置指南

    在安装完Linux操作系统后,我们需要执行一些操作以确保系统正常运行并满足我们的需求。下面是一些常见的虚拟机系统安装后操作: 设置root密码: 首先,我们应该设置root用户的密码。可以使用以下命令设置root密码: 创建普通用户: 为了安全起见,应该创建一个普通用户

    2024年02月10日
    浏览(36)
  • 凝思系统安装及初始化配置

    我本次使用的是浪潮塔式服务器,配置如下: [浪潮塔式服务器][130101101200095X][NP5570系列|Intel至强银牌(8核16线2.1GHz)CPU 2|16GB内存 2|2TB硬盘 1|4GB独显 1|千百兆网口 4|500W电源 1|键盘鼠标 1|内置DVD 1] 浪潮服务器官网地址:https://www.inspur.com/eportal/ui?pageId=2317460type=2 官方镜像下载地址:

    2024年02月12日
    浏览(151)
  • 【Linux下MySQL的初始化和配置】

    先去官网把需要的MYSQL版本下载并安装好,网上具体下载的方法蛮多的,这里就不赘述了。 为了保证数据库目录与文件的所有者为 mysql 登录用户,如果 以 root 身份运行 mysql 服务 ,需要执行下面的命令: 说明: –initialize选项 默认以“安全”模式来初始化, 为 root 用户生成

    2024年02月07日
    浏览(33)
  • Git的安装与初始化配置教程

    Git是一个版本控制系统。版本控制系统可以使多个终端同时在线对一个文件或者数据进行更改而不用每次更改时重复创建多余的副本,或者造成不必要的存储空间浪费。 版本控制系统有两种类型: 一种是集中式版本控制系统: 比如SVN、CVS等等。集中式版本控制系统中,所有

    2024年03月16日
    浏览(33)
  • 【nginx实践连载-1】安装部署配置初始化

    要在Ubuntu上安装、部署和配置Nginx,可以按照以下步骤进行操作: 步骤1:安装Nginx 打开终端(Terminal)。 运行以下命令更新软件包索引: 安装Nginx: 步骤2:启动Nginx服务 安装完成后,Nginx服务将会自动启动。您可以使用以下命令检查Nginx服务状态: 如果Nginx未启动,您可以使

    2024年02月20日
    浏览(27)
  • 最小化安装Linux系统初始化脚本

    目录 最小化安装Linux系统初始化脚本 注:此脚本适用于centos 7/8、Ubuntu1804,具体需要根据实际情况进行测试调整。 此脚本包含的功能: 允许 root 用户使用 ssh 登录 关闭 selinux 关闭防火墙 设置 ps1 设置默认编辑器为 vim 自定义 vim 自定义历史命令 修改内核参数 设置资源限制 修

    2024年02月12日
    浏览(28)
  • 虚拟机安装 Ubuntu22.04 后的一些初始化配置

    server版 版本详情: 参考: 官方文档 虚拟机包含两个网络,网络地址转换用于访问互联网,启用DHCP,仅主机网络用于内部通信,指定静态IP地址,此版本中使用netplan作为默认的网络管理工具,执行命令 sudo vim /etc/netplan/00-installer-config.yaml 修改配置文件: 修改后执行命令 su

    2024年04月26日
    浏览(29)
  • 自动化构建平台(五)之Jenkins初始化配置以及插件安装操作

    上一篇我们介绍了Jenkins的安装和登录等相关操作,今天给大家介绍登录Jenkins后的一些初始化配置和插件安装的操作。因为如果要使用Jenkins来进行代码构建,必须先安装相关的插件和配置一些系统环境变量才行。 这里我列举了才代码构建阶段Jenkins需要的主要插件,包含:

    2024年03月27日
    浏览(42)
  • 全网最全,在Linux下安装Git与初始化Git 环境(详细)

    Linux 安装 Git 1、wget方式 下载Git安装包: 直接执行以下命令 解压安装包: 安装编译源码所需依赖: 卸载旧版本Git: 编译: 安装Git: 配置环境变量: 在底部的path变量结尾加上相关配置信息即可 随后保存并更新环境配置 验证: 再来看看git的版本号 到此为止,大功告成了

    2024年02月07日
    浏览(37)
  • Git初始化连接Gitlab远程仓库

    ​ 新环境下git配置,除了初始化和name、email设置,还需在远程仓库Gitlab中配置个人ssh key,才能clone远程仓库代码到本地,完成关联。 此时,.ssh目录下会有一个公钥(id_rsa.pub)一个私钥(id_rsa),将公钥的内容放到GitHub/GitLab等用户设置的SSH keys中即可。 之后本地就关联了远程仓库

    2024年02月11日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包