通过阿里云ECS服务器安装Mariadb(MySQL)具体过程及Navicat远程连接

本文详细介绍了在阿里云上安装Mariadb的过程及通过Navicat实现远程连接的方法。从Ubuntu系统下Mariadb的安装步骤,到解决远程连接中遇到的权限问题,再到最终成功连接数据库,全程实战分享。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

经过一下午的不懈努力,终于在阿里云上安装了mariadb,并通过Navicat远程连接上了阿里云mariadb数据库。本人也是一步一步通过百度查查查才安装上的,一点点爬坑填坑,因此在这里记录一下,以备以后使用。

1. 安装mariadb

本人使用的服务器是Ubuntu 16.04.3版本,因为我之前安装过MySQL,怕两个数据库有冲突,所以就先把MySQL给卸载了,再安装Mariadb。

安装过程共需两步:
(1)sudo apt update
在这里插入图片描述
(2)sudo apt install mariadb-server
在这里插入图片描述
在这里插入图片描述
执行完上面两步mariadb就安装完了,第一次安装的话用户名是root,没有密码,执行以下语句执行对数据库的初始化,比如设置密码:
mysql_secure_installation
在这里插入图片描述
执行上面这条语句过程中应该还有一堆我也不懂什么选项,反正一路y就行了。

启动数据库:sudo mysql -uroot -p
关闭数据库:Ctrl+C(键盘)
重启数据库:service mysql restart

启动数据库之后看看能不能进入到数据库中,笔者到这一切都是顺利的。

2. Navicat远程连接数据库

打开Navicat ,新建连接(选mariadb那项)。在常规中,连接名随便起,主机名填localhost,端口填3306,用户名和密码分别对应阿里云上的数据库中对应的用户名和密码。

在这里插入图片描述

在SSH中,使用SSH通道前打钩,主机名或IP地址填阿里云的公网ip,端口填22,用户名和密码分别对应阿里云的用户名和密码。
在这里插入图片描述
点击连接测试,若显示连接成功,就说明远程连接数据库成功了。

3. Navicat远程连接数据库时遇到的问题

笔者在实际测试连接时经常报这个错误:2013 - lost connection to mysql server at ‘reading initial communication packet’,system error:0 …"错误

主要原因是没有为其他主机远程连接数据库开放权限
解决方法:

  1. 在客户端测试与数据库服务器的连通性:ping一下公网ip,确认客户机与服务器之间的网络连通是没有问题的。

  2. 选择mysql数据库进行操作 :MariaDB [(none)]> use mysql;
    在这里插入图片描述

  3. 查看user,password,host这三个字段的权限分配情况: MariaDB [mysql]> select user,password,host from user;
    在这里插入图片描述
    通过以上输出可以看出数据库默认只允许用户root在本地服务器(localhost)上登录,不允许其他主机远程连接。

  4. 允许用户root使用密码(123456)在任何主机上连接该数据库,并赋予该用户所有权限。
    MariaDB [mysql]> grant all privileges on . to root@"%" identified by “123456”;
    MariaDB [mysql]> flush privileges;
    在这里插入图片描述

  5. 再执行 MariaDB [mysql]> select user,password,host from user;
    在这里插入图片描述
    新加入的行中的“%”就意味着任何主机都被允许连接数据库,这样数据库的访问权限就设置好了。

重启数据库,再点击测试连接,这回就连接成功了。

网上还有一种解决方法:在/etc/mysql/my.cnf中的[mysqld]下添加skip-name-resolve
service mysql restart重启mysql.
笔者在实际操作过程中没在my.cnf中找到mysqld,于是自己加了一个,并在下面输入skip-name-resolve,重启mysql,在没执行上述5步方法前,并不好使。。。

把项目需要的表导进去吧,又可以愉快的进行项目开发了!
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值