Mysql服务器的外部连接

目录

前言:

Windows上的客户端连接工具有:

Linux上连接其他虚拟机上的MySQL服务器:

在Windows上通过Navicat连接虚拟机上的Mysql服务器

1、我们先下载好Navicat:

2、当我们下载安装好Navicat后,打开它,创建新的连接

出现的问题: 

如何解决mysql远程连接问题:

 3、通过Navicat成功连接上mysql数据库

在Linux上通过Mysql客户端工具连接虚拟机上的Mysql服务器

1、首先我们先得下载mariadb

2、通过命令行工具Mysql连接上Mysql服务器(前提是你已经在mysql服务器里创建好远程访问用户了)

3、远程创建新数据库,并在Mysql服务器上验证是否创建成功

Mysql服务器上也可以通过如下命令查看已经连接上mysql服务器的主机IP地址


前言:

继上一次实验,我们已经成功在Linux上安装了mysql服务

(41条消息) Mysql的介绍和软件环境的部署_Claylpf的博客-CSDN博客

下面我们需要通过 Windows 和 Linux 上的 客户端连接工具 来实现连接Linux上的mysql服务

Windows上的客户端连接工具有:

  1. SQLyog,它是一个商业化的 MySQL 数据库管理工具,支持 Windows 操作系统,界面美观,功能强大,支持多种数据导入导出格式。

  2. Navicat,它是一个商业化的 MySQL 数据库管理工具,支持 Windows、Linux 和 macOS 等操作系统,提供了丰富的功能和强大的数据管理能力。

  3. MySQL Workbench,它是MySQL 官方提供的,是一个功能强大的 MySQL 数据库管理工具,支持 Windows、Linux 和 macOS 等操作系统。

Linux上连接其他虚拟机上的MySQL服务器:

可以使用MySQL客户端连接工具,例如命令行工具 mysql 或者 GUI 工具 MySQL Workbench

以下是使用命令行工具 mysql 连接其他Linux服务器上的MySQL服务器的步骤:

  1. 在目标Linux服务器上,安装MySQL服务器,并确保MySQL服务器已经启动。

  2. 在目标Linux服务器上,创建一个MySQL用户,并为该用户分配连接MySQL服务器的权限。

  3. 在本地Linux服务器上,打开终端窗口,输入以下命令连接目标Linux服务器上的MySQL服务器:

    mysql -h <目标服务器IP地址> -u <MySQL用户名> -p
    

    其中,-h 参数指定目标服务器的IP地址或者主机名,-u 参数指定MySQL用户名,-p 参数表示需要输入MySQL用户的密码。

  4. 在输入密码后,就可以连接到目标Linux服务器上的MySQL服务器,并执行相应的SQL命令了。

需要注意的是,如果目标Linux服务器上的MySQL服务器使用了防火墙,需要确保将MySQL服务器的端口(默认是3306)添加到防火墙规则中,以允许其他Linux服务器连接到MySQL服务器。

在Windows上通过Navicat连接虚拟机上的Mysql服务器

1、我们先下载好Navicat:

Navicat的下载与安装教程 - 知乎 (zhihu.com)

2、当我们下载安装好Navicat后,打开它,创建新的连接

点击连接下的Mysql

填入你的Mysql服务器的主机IP地址,以及密码

出现的问题: 

我们先尝试连接,但发现出现下面的问题

如何解决mysql远程连接问题:

 如何解决问题呢,我首先想到的是mysql服务器的防火墙把我拦截了,因此

我关闭了linux里的防火墙

但是问题还是没有解决,所有就只有可能是Mysql服务拒绝我们通过root用户去访问Mysql服务器,因此我们必须在Mysql服务器内部创建一个能够远程连接的用户 去连接mysql服务器

 先登录mysql服务器

 新建一个用户lpf,密码为123456,并给他授权,使我们可以远程登录mysql服务器

命令解释:
grant是mysql里的授权命令

all 表示所有的权限(如:select,update,delete,insert等)

on  *.*  表示在所有的数据库上所有的表里,第一个*代表数据库,第二个*代表的是库里所有的表

to 'lpf'@'%'  给lpf用户授予以上权限,可以从任意ip地址远程连接过来  @只是分隔符,无意义,%代表任意IP地址,是mysql里的通配符

identified by '123456' 表示密码为123456 

;  是mysql里的结束符号,必须要接

 3、通过Navicat成功连接上mysql数据库

下面我们完成创建新的用户了,接下来就可以通过Navicat连接上mysql服务器了

如下图所示:

双击linux-mysql,如果显示如下图所示,则表示连接成功了

 

同样我们也可以使用SQLyog连接上虚拟机上的Mysql服务,基本连接步骤与Navicat十分相似。

在Linux上通过Mysql客户端工具连接虚拟机上的Mysql服务器

1、首先我们先得下载mariadb

或者直接安装mysql(yum install mysql -y)

2、通过命令行工具Mysql连接上Mysql服务器(前提是你已经在mysql服务器里创建好远程访问用户了)

我们将如下图所示,写如下命令:

 其中 -u 表示登录用户  -p 表示用户密码  -h表示指定Mysql服务器的IP地址或者主机名

上图就是Linux通过Mysql命令行工具创建好连接的图片。

3、远程创建新数据库,并在Mysql服务器上验证是否创建成功

下面是在远程linux上创建表的过程

MySQL [(none)]> show databases;               展示数据库
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

MySQL [(none)]> create database sanchuang;    创建数据库
Query OK, 1 row affected (0.00 sec)

MySQL [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sanchuang          |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

MySQL [(none)]> 

下面是Mysql服务器上的数据库的展示

root@(none) 20:44  mysql>show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sanchuang          |
| sys                |
+--------------------+
5 rows in set (0.00 sec)

root@(none) 21:27  mysql>

由上可知,远程linux服务器成功的连接上了Mysql服务器了

我们也可以在Windows上的Navicat看到创建的新数据库sanchuang的出现

由上面可以知道我们的Windows和远程Linux服务器成功的连接上了Mysql服务器了。

Mysql服务器上也可以通过如下命令查看已经连接上mysql服务器的主机IP地址

root@(none) 21:27  mysql>show processlist;         #可以查看有哪些用户远程连接上了我的Mysql服务器上去了
+----+------+---------------------+------+---------+------+----------+------------------+
| Id | User | Host                | db   | Command | Time | State    | Info             |
+----+------+---------------------+------+---------+------+----------+------------------+
|  8 | root | localhost           | NULL | Query   |    0 | starting | show processlist |
|  9 | lpf  | 192.168.2.5:50577   | sys  | Sleep   |  102 |          | NULL             |
| 10 | lpf  | 192.168.2.5:50595   | sys  | Sleep   |  102 |          | NULL             |
| 12 | lpf  | 192.168.2.215:59666 | NULL | Sleep   |  432 |          | NULL             |
+----+------+---------------------+------+---------+------+----------+------------------+
4 rows in set (0.00 sec)

root@(none) 21:32  mysql>

实验完毕!! 

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
前言 1. 一般信息 1.1. 关于本手册 1.2. 本手册采用的惯例 1.3. MySQL AB概述 1.4. MySQL数据库管理系统概述 1.4.1. MySQL的历史 1.4.2. MySQL的的主要特性 1.4.3. MySQL稳定性 1.4.4. MySQL表最大能达到多少 1.4.5. 2000年兼容性 1.5. MaxDB数据库管理系统概述 1.5.1. 什么是MaxDB? 1.5.2. MaxDB的历史 1.5.3. MaxDB的特性 1.5.4. 许可和支持 1.5.5. MaxDB和MySQL之间的特性差异 1.5.6. MaxDB和MySQL之间的协同性 1.5.7. 与MaxDB有关的链接 1.6. MySQL发展大事记 1.6.1. MySQL 5.1的新特性 1.7. MySQL信息源 1.7.1. MySQL邮件列表 1.7.2. IRC(在线聊天系统)上的MySQL社区支持 1.7.3. MySQL论坛上的MySQL社区支持 1.8. MySQL标准的兼容性 1.8.1. MySQL遵从的标准是什么 1.8.2. 选择SQL模式 1.8.3. 在ANSI模式下运行MySQL 1.8.4. MySQL对标准SQL的扩展 1.8.5. MySQL与标准SQL的差别 1.8.6. MySQL处理约束的方式 2. 安装MySQL 2.1. 一般安装问题 2.1.1. MySQL支持的操作系统 2.1.2. 选择要安装的MySQL分发版 2.1.3. 怎样获得MySQL 2.1.4. 通过MD5校验和或GnuPG验证软件包的完整性 2.1.5. 安装布局 2.2. 使用二进制分发版的标准MySQL安装 2.3. 在Windows上安装MySQL 2.3.1. Windows系统要求 2.3.2. 选择安装软件包 2.3.3. 用自动安装器安装MySQL 2.3.4. 使用MySQL安装向导 2.3.5. 使用配置向导 2.3.6. 通过非安装Zip文件安装MySQL 2.3.7. 提取安装档案文件 2.3.8. 创建选项文件 2.3.9. 选择MySQL服务器类型 2.3.10. 首次启动服务器 2.3.11. 从Windows命令行启动MySQL 2.3.12. 以Windows服务方式启动MySQL 2.3.13. 测试MySQL安装 2.3.14. 在Windows环境下对MySQL安装的故障诊断与排除 2.3.15. 在Windows下升级MySQL 2.3.16. Windows版MySQL同Unix版MySQL对比 2.4. 在Linux下安装MySQL 2.5.在Mac OS X中安装MySQL 2.6. 在NetWare中安装MySQL 2.7. 在其它类Unix系统中安装MySQL 2.8. 使用源码分发版安装MySQL 2.8.1. 源码安装概述 2.8.2. 典型配置选项 2.8.3. 从开发源码树安装 2.8.4. 处理MySQL编译问题 2.8.5. MIT-pthreads注意事项 2.8.6. 在Windows下从源码安装MySQL 2.8.7. 在Windows下编译MySQL客户端 2.9. 安装后的设置和测试 2.9.1. Windows下安装后的过程 2.9.2. Unix下安装后的过程 2.9.3. 使初始MySQL账户安全 2.10. 升级MySQL 2.10.1. 从5.0版升级 2.10.2. 升级授权表 2.10.3. 将MySQL数据库拷贝到另一台机器 2.11. 降级MySQL 2.12. 具体操作系统相关的注意事项 2.12.1. Linux注意事项 2.12.2. Mac OS X注意事项 2.12.3. Solaris注意事项 2.12.4. BSD注意事项 2.12.5. 其它Unix注意事项 2.12.6. OS/2注意事项 2.13. Perl安装注意事项 2.13.1. 在Unix中安装Perl 2.13.2. 在Windows下安装ActiveState Perl 2.13.3. 使用Perl DBI/DBD接口的问题 3. 教程 3.1. 连接与断开服务器 3.2. 输入查询 3.3. 创建并使用数据库 3.3.1. 创建并选择数据库 3.3.2. 创建表 3.3.3. 将数据装入表中 3.3.4. 从表检索信息 3.4. 获得数据库和表的信息 3.5. 在批处理模式下使用mysql 3.6. 常用查询的例子 3.6.1. 列的最大值 3.6.2. 拥有某个列的最大值的行 3.6.3. 列的最大值:按组 3.6.4. 拥有某个字段的组间最大值的行 3.6.5. 使用用户变量 3.6.6. 使用外键 3.6.7. 根据两个键搜索 3.6.8. 根据天计算访问量 3.6.9. 使用AUTO_INCREMENT 3.7. 孪生项目的查询 3.7.1. 查找所有未分发的孪生项 3.7.2. 显示孪生对状态的表 3.8. 与Apache一起使用MySQL 4. MySQL程序概述 4.1. MySQL程序概述 4.2. 调用MySQL程序 4.3. 指定程序选项 4.3.1. 在命令行上使用选项 4.3.2. 使用选项文件 4.3.3. 用环境变量指定选项 4.3.4. 使用选项设置程序变量 5. 数据库管理 5.1. MySQL服务器服务器启动脚本 5.1.1. 服务器端脚本和实用工具概述 5.1.2. mysqld-max扩展MySQL服务器 5.1.3. mysqld_safe:MySQL服务器启动脚本 5.1.4. mysql.server:MySQL服务器启动脚本 5.1.5. mysqld_multi:管理多个MySQL服务器的程序 5.2. mysqlmanager:MySQL实例管理器 5.2.1. 用MySQL实例管理器启动MySQL服务器 5.2.2. 连接MySQL实例管理器并创建用户账户 5.2.3. MySQL实例管理器命令行选项 5.2.4. MySQL实例管理器配置文件 5.2.5. MySQL实例管理器识别的命令 5.3. mysqld:MySQL服务器 5.3.1. mysqld命令行选项 5.3.2. SQL服务器模式 5.3.3. 服务器系统变量 5.3.4. 服务器状态变量 5.4. mysql_fix_privilege_tables:升级MySQL系统表 5.5. MySQL服务器关机进程 5.6. 一般安全问题 5.6.1. 通用安全指南 5.6.2. 使MySQL在攻击者面前保持安全 5.6.3. Mysqld安全相关启动选项 5.6.4. LOAD DATA LOCAL安全问题 5.7. MySQL访问权限系统 5.7.1. 权限系统的作用 5.7.2. 权限系统工作原理 5.7.3. MySQL提供的权限 5.7.4. 与MySQL服务器连接 5.7.5. 访问控制, 阶段1:连接核实 5.7.6. 访问控制, 阶段2:请求核实 5.7.7. 权限更改何时生效 5.7.8. 拒绝访问错误的原因 5.7.9. MySQL 4.1中的密码哈希处理 5.8. MySQL用户账户管理 5.8.1. MySQL用户名和密码 5.8.2. 向MySQL增加新用户账户 5.8.3. 从MySQL删除用户账户 5.8.4. 限制账户资源 5.8.5. 设置账户密码 5.8.6. 使你的密码安全 5.8.7. 使用安全连接 5.9. 备份与恢复 5.9.1. 数据库备份 5.9.2. 示例用备份与恢复策略 5.9.3. 自动恢复 5.9.4. 表维护和崩溃恢复 5.9.5. myisamchk:MyISAM表维护实用工具 5.9.6. 建立表维护计划 5.9.7. 获取关于表的信息 5.10. MySQL本地化和国际应用 5.10.1. 数据和排序用字符集 5.10.2. 设置错误消息语言 5.10.3. 添加新的字符集 5.10.4. 字符定义数组 5.10.5. 字符串比较支持 5.10.6. 多字节字符支持 5.10.7. 字符集问题 5.10.8. MySQL服务器时区支持 5.11. MySQL日志文件 5.11.1. 错误日志 5.11.2. 通用查询日志 5.11.3. 二进制日志 5.11.4. 慢速查询日志 5.11.5. 日志文件维护 5.12. 在同一台机器上运行多个MySQL服务器 5.12.1. 在Windows下运行多个服务器 5.12.2. 在Unix中运行多个服务器 5.12.3. 在多服务器环境中使用客户端程序 5.13. MySQL查询高速缓冲 5.13.1. 查询高速缓冲如何工作 5.13.2. 查询高速缓冲SELECT选项 5.13.3. 查询高速缓冲配置 5.13.4. 查询高速缓冲状态和维护 6. MySQL中的复制 6.1. 复制介绍 6.2. 复制实施概述 6.3. 复制实施细节 6.3.1. 复制主线程状态 6.3.2. 复制从I/O线程状态 6.3.3. 复制从SQL线程状态 6.3.4. 复制传递和状态文件 6.4. 如何设置复制 6.5. 不同MySQL版本之间的复制兼容性 6.6. 升级复制设置 6.6.1. 将复制升级到5.0版 6.7. 复制特性和已知问题 6.8. 复制启动选项 6.9. 复制FAQ 6.10. 复制故障诊断与排除 6.11. 通报复制缺陷 6.12. 多服务器复制中的Auto-Increment 7. 优化 7.1. 优化概述 7.1.1. MySQL设计局限与折衷 7.1.2. 为可移植性设计应用程序 7.1.3. 我们已将MySQL用在何处? 7.1.4. MySQL基准套件 7.1.5. 使用自己的基准 7.2. 优化SELECT语句和其它查询 7.2.1. EXPLAIN语法(获取SELECT相关信息) 7.2.2. 估计查询性能 7.2.3. SELECT查询的速度 7.2.4. MySQL怎样优化WHERE子句 7.2.5. 范围优化 7.2.6. 索引合并优化 7.2.7. MySQL如何优化IS NULL 7.2.8. MySQL如何优化DISTINCT 7.2.9. MySQL如何优化LEFT JOIN和RIGHT JOIN 7.2.10. MySQL如何优化嵌套Join 7.2.11. MySQL如何简化外部联合 7.2.12. MySQL如何优化ORDER BY 7.2.13. MySQL如何优化GROUP BY 7.2.14. MySQL如何优化LIMIT 7.2.15. 如何避免表扫描 7.2.16. INSERT语句的速度 7.2.17. UPDATE语句的速度 7.2.18. DELETE语句的速度 7.2.19. 其它优化技巧 7.3. 锁定事宜 7.3.1. 锁定方法 7.3.2. 表锁定事宜 7.4. 优化数据库结构 7.4.1. 设计选择 7.4.2. 使你的数据尽可能小 7.4.3. 列索引 7.4.4. 多列索引 7.4.5. MySQL如何使用索引 7.4.6. MyISAM键高速缓冲 7.4.7. MyISAM索引统计集合 7.4.8. MySQL如何计算打开的表 7.4.9. MySQL如何打开和关闭表 7.4.10. 在同一个数据库中创建多个表的缺陷 7.5. 优化MySQL服务器 7.5.1. 系统因素和启动参数的调节 7.5.2. 调节服务器参数 7.5.3. 控制查询优化器的性能 7.5.4. 编译和链接怎样影响MySQL的速度 7.5.5. MySQL如何使用内存 7.5.6. MySQL如何使用DNS 7.6. 磁盘事宜 7.6.1. 使用符号链接 8. 客户端和实用工具程序 8.1. 客户端脚本和实用工具概述 8.2. myisampack:生成压缩、只读MyISAM表 8.3. mysqlMySQL命令行工具 8.3.1. 选项 8.3.2. mysql命令 8.3.3. 怎样从文本文件执行SQL语句 8.3.4. mysql技巧 8.4. mysqlaccess:用于检查访问权限的客户端 8.5. mysqladmin:用于管理MySQL服务器的客户端 8.6. mysqlbinlog:用于处理二进制日志文件的实用工具 8.7. mysqlcheck:表维护和维修程序 8.8. mysqldump:数据库备份程序 8.9. mysqlhotcopy:数据库备份程序 8.10. mysqlimport:数据导入程序 8.11. mysqlshow-显示数据库、表和列信息 8.12. myisamlog:显示MyISAM日志文件内容 8.13. perror:解释错误代码 8.14. replace:字符串替换实用工具 8.15. mysql_zap:杀死符合某一模式的进程 9. 语言结构 9.1. 文字值 9.1.1. 字符串 9.1.2. 数值 9.1.3. 十六进制值 9.1.4. 布尔值 9.1.5. 位字段值 9.1.6. NULL值 9.2. 数据库、表、索引、列和别名 9.2.1. 识别符限制条件 9.2.2. 识别符大小写敏感性 9.3. 用户变量 9.4. 系统变量 9.4.1. 结构式系统变量 9.5. 注释语法 9.6. MySQL中保留字的处理 10. 字符集支持 10.1. 常规字符集和校对 10.2. MySQL中的字符集和校对

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值