Mariadb远程登陆配置及问题解决

前言:

  安装过程不再赘述,直接说问题,mysql的远程连接需要解决两个问题:1.允许root用户远程连接。2.允许任意ip远程连接数据库。当然,在测试和解决问题之前,得首先保证你的数据库与远程主机之间的网络通信没有问题,简单的来说,就是互相ping通,其次,为了避免防火墙的干扰,将本地主机和数据库主机的防火墙都关闭,当然,生产环境下防火墙肯定是要打开的,并且需要额外的安全配置。

问题解决:

1.新安装的数据库默认是需要初始化的,在数据库服务启动的情况下,使用下面的命令来进行初始化。

[root@localhost ~]# mysql_secure_installation
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]
 ... 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] n  #如果是为root用户配置远程登陆,这里需要选择n,不选择禁止root用户远程登陆,别的选择都无关紧要。
 ... skipping.

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]
 - 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]
 ... 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![root@localhost ~]# systemctl restart mariadb  #完成初始化之后,重启服务。

2.允许root用户远程连接与允许任意ip远程连接数据库都是可以通过在数据库里执行一条命令来实现的。

这里分为两种情况:

1)新建admin用户远程连接mysql数据库(新建任意用户,以admin为例)

grant all on *.* to admin@'%' identified by '123456' with grant option;
flush privileges;

允许任何ip地址(%表示允许任何ip地址)的电脑用admin帐户和密码(123456)来访问这个mysql server。
注意admin账户不一定要存在。

2)支持root用户允许远程连接mysql数据库

grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
flush privileges;

需要注意的是,为root用户配置远程登陆,密码需要和之前配置的密码一致。

3.ubuntu系统的额外配置。

Ubuntu系统的my.cnf文件在vim /etc/mysql/mysql.conf.d/mysqld.cnf中,注释掉其中的

bind-address = 127.0.0.1

centos系统的配置文件中默认没有该行。

检查的办法也很简单,在数据库启动的前提下,使用netstat -an | grep 3306查看端口的连接信息。0.0.0.0则表示允许任意IP连接。

如图所示则为允许任意IP连接。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • 浅谈MySQL和MariaDB区别(mariadb和mysql的性能比较)

    MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险. MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品. MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入

  • Window7安装MariaDB数据库及系统初始化操作分析

    本文实例讲述了Window7安装MariaDB数据库及系统初始化操作.分享给大家供大家参考,具体如下: MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险. MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品. 一.MariaDB下载 1.MariaDB下载地址下载链接,选择最新版本. 2

  • 详谈MySQL和MariaDB区别与性能全面对比

    MariaDB数据库介绍 MariaDB数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可.开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险. MariaDB的目的是完全兼容MySQL,包括API和命令行,使之能轻松成为MySQL的代替品. MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL卖给了SUN,此后,随着SUN被甲骨文收购

  • Windows10系统下安装MariaDB 的教程图解

    截至写这篇博客为止,MariaDB官方的稳定版本为,详情访问官方地址:https://downloads.mariadb.org/ 安装之前先简单说一下MariaDB: MariaDB由MySQL的创始人麦克尔·维德纽斯主导开发,他早前曾以10亿美元的价格,将自己创建的公司MySQL卖给了SUN,此后,随着SUN被甲骨文收购,MySQL的所有权也落入Oracle的手中.甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此开源社区采用分支的方式来避开这个风险.所以说呢,MariaDB数

  • Linux下的 mariadb 使用 root 用户启动方式(推荐)

    近日因测试安全产品需要,想调整mariadb的启动用户为root, 经历一番波折后终于成功! 注意:以root身份启动mysql是一项非常危险行为,相当于给了数据库操作用户(数据库管理员或黑客)一个通过mysql对系统直接操作的通道! 实际上是官方不允许root启动的, 因此在一般启动方式下root启动会返回启动失败,并于 /var/log/mariadb/mariadb.log 中提示 Please consult the Knowledge Base to find out how to r

  • docker之创建MariaDB镜像的方法

    一.基于commit命令方式创建 docker的安装 [root@test01 ~]# yum install docker [root@test01 ~]# systemctl enable docker [root@test01 ~]# systemctl start docker 下载本地镜像 [root@test01 ~]# docker pull centos:7.4.1708 [root@test01 ~]# docker images REPOSITORY TAG IMAGE ID

  • MySQL/MariaDB的Root密码重置教程

    前言 忘记密码是我们经常会遇到了一个问题, 如果您忘记或丢失root密码到你的MySQL或MariaDB的数据库,你仍然可以访问并重置密码,如果你有访问服务器和sudo -启用用户帐户. 几个月前,我在Ubuntu 18.04 上安装了 LAMP.今天,我尝试以 root 用户身份登录数据库,但我完全忘记了密码.经过一阵 Google 搜索并浏览一些文章后,我成功重置了密码.对于那些想知道如何做到这一点的人,这个简短的教程解释了如何在类 Unix 操作系统中重置 MySQL 或 MariaDB

  • PHP+MariaDB数据库操作基本技巧备忘总结

    本文实例总结了PHP+MariaDB数据库操作基本技巧.分享给大家供大家参考,具体如下: PHP+MySQL是比较常见的搭配,由于我主观上不太喜欢Oracle,而MySQL被它收购后,骨子里也发生了一些变化,因此我更换了MariaDB,仍然坚持MySQL当初开源信念的亲兄弟.本质上都是MySQL的内核,因此下面所有的数据库操作代码,都是可以直接在MySQL使用的. 晚上搭好PHP+Apache的基础环境,以及安装好MySQL数据库后,写了一个最简单的数据库连接代码,结果报了如下经典错误:Fata

  • Mariadb远程登陆配置及问题解决

    前言: 安装过程不再赘述,直接说问题,mysql的远程连接需要解决两个问题:1.允许root用户远程连接.2.允许任意ip远程连接数据库.当然,在测试和解决问题之前,得首先保证你的数据库与远程主机之间的网络通信没有问题,简单的来说,就是互相ping通,其次,为了避免防火墙的干扰,将本地主机和数据库主机的防火墙都关闭,当然,生产环境下防火墙肯定是要打开的,并且需要额外的安全配置. 问题解决: 1.新安装的数据库默认是需要初始化的,在数据库服务启动的情况下,使用下面的命令来进行初始化. [root@

  • Ubuntu 远程登陆服务器 ssh的安装和配置详解

    以下命令若无加粗备注说明在本地计算机操作,则都是在服务器端操作 1 安装并使用ssh远程登陆 更新软件列表 sudo apt-get update 更新本地软件 sudo apt-get upgrade 安装ssh服务 sudo apt-get install openssh-server 开启ssh服务 sudo /etc/init.d/ssh start 查看本机IP地址 inet字段后面的就是你的IP地址 sudo ifconfig 远程登陆 在本地计算机终端内输入ssh <usernam

  • 远程登陆SQL Server 2014数据库的方法

    远程登陆SQLServer (2014)数据库,供大家参考,具体内容如下 两台电脑,同一个局域网内,IP同一网段 配置: Computer1: Windows10,安装SQL Server 2014 enterprise版(作为服务器) Computer2: Windows 10,VS2015 Computer1:(1)设置Windows用户和SQL Server身份验证两种登陆方法 (2)配置SQL Server 配置管理器 网络配置将Named Pipes和TCP/IP协议均打开,TCP/I

  • 六十一、NT网的无盘工作站远程登陆

    六十一.NT网的无盘工作站远程登陆 远程启动服务是 Windows NT Server 的一项功能,它支持远程工作站使用服务器硬盘上的软件启动 MS-DOS 和 Windows.使用远程启动服务可以增加网络安全性,并提供给网络系统管理员更大的控制权, 具有容易集中升级软件,降低购买和维护工作站的成本等优点.目前,在NT网络资料中还没有涉及到模板配置文件中不存在的一般网卡的远程启动配置资料,大家都很关心如何解决它的配置问题.    下面作者以中文NT Server 4.0 为例, 介绍NT网络中使

  • xshell 远程登陆CentOS7 免密登陆的思路详解

    首先说一下大体的思路: 1. 以密码登陆CentOS系统 2. 配置ssh 3. xshell 生成秘钥 4. 进行免密登陆 软件.设备: xshell(下载地址(免费版),也可以自行百度下载) CentOS7.5 (百度云服务器) 接下来言归正传: 1. 密码远程连接CentOS 打开xshell -- 文件 -- 新建,会弹出如下图的界面 说明一下里面需要修改的地方 名称:为了区分服务器,名字随便起协议:默认ssh就好主机:CentOS系统所在的机器的IP地址端口:默认22就可以重新连接:有

  • Mysql 远程连接配置实现的两种方法

    Mysql 远程连接配置实现的两种方法 大家在公司工作中,经常会遇到mysql数据库存储于某个人的电脑上,大家要想连接mysql服务,装有mysql服务的电脑就必须开启远程连接. 第一种: root@ubuntu:/usr/local/MySQL# mysql -hlocalhost -uroot -proot; mysql>use mysql; mysql>insert into user ( host, user, password, Select_priv, Insert_priv, U

  • python 实现自动远程登陆scp文件实例代码

     python 实现自动远程登陆scp文件实例代码 实现实例代码: #!/usr/bin/expect if {$argc!=3} { send_user "Usage: $argv0 {path1} {path2} {Password}\n\n" exit } set path1 [lindex $argv 0] set path2 [lindex $argv 1] set Password [lindex $argv 2] spawn scp ${path1} ${path2} e

  • 分发服务器 系统抛出18483错误,未能连接服务器,因为'distributor_admin'未定义远程登陆

    系统抛出18483错误,未能连接服务器,因为'distributor_admin'未定义远程登陆 我在做分发服务器,进行快照复制设置的时候在最后出现如下错误: 错误18483,未能连接服务器,因为 'distributor_admin '未在该服务器上定义远程登录. 为什么会这样啊?该如何解决啊??急啊,还请各位指教! 解决方法: 我刚刚解决这种情况,你在EM中注册服务器的时候,一定要是你SQL SERVER服务器启动的名字!如果是IP地址的注册服务器,就会出现此种情况! 另一种的解决方法如下:

  • 解决ssh远程登陆linux显示-bash-4.1$的问题

    cp -pr /etc/skel/.bash* /home/test/ #/home/test是用户目录 改变用户家目录:usermod -md /tmptest test 以上就是小编为大家带来的解决ssh远程登陆linux显示-bash-4.1$的问题全部内容了,希望大家多多支持我们~

  • 两大步骤教您开启MySQL 数据库远程登陆帐号的方法

    1.确定服务器上的防火墙没有阻止 3306 端口 MySQL 默认的端口是 3306 ,需要确定防火墙没有阻止 3306 端口,否则远程是无法通过 3306 端口连接到 MySQL 的. 如果您在安装 MySQL 时指定了其他端口,请在防火墙中开启您指定的 MySQL 使用的端口号. 如果不知道怎样设置您的服务器上的防火墙,请向您的服务器管理员咨询. 2.增加允许远程连接 MySQL 用户并授权 1)首先以 root 帐户登陆 MySQL 在 Windows 主机中点击开始菜单,运行,输入"cm

随机推荐