Mysql之迂回连接术
转载请注明来源:https://www.cnblogs.com/Sherlock-L/p/14932870.html
关键词:OmniDB、Mysql Router
背景:项目的测试数据库放在了生产机器上,而公司忽然禁止办公网络访问生产机器上的数据库,那么就只能迂回访问了,摊手.jpg。
一、OmniDB
1.下载
虽然办公网络不能访问生产机器了,但是测试服务器可以呀,下载个server版到测试服务器上,解压即可使用。

2.运行
nohup omnidb-server -H 0.0.0.0 -p 8090 &
p.s.:起服务前先检查下端口是否被占用,sudo lsof -i:8090,别问为啥要sudo,不用root身份你查不完整端口占用情况 (•̀ᴗ•́)و
3.访问
可以在任何系统上使用浏览器进行ip+端口访问,默认账号和密码都是admin,且支持多用户。

4.使用
登录OmniDB后,Add Connection,新建一下目标数据库的连接,连上数据库后就是纯界面操作了,小白也可以轻易上手,这里不多做介绍了。

Connection Type里可选的数据库类型有:
postgresql
mysql
mariadb
oracle
terminal
sqlite
二、Mysql Router
1.简介
MySQL Router是MySQL官方提供的一个轻量级中间件,是InnoDB Cluster的一部分,可在应用程序和后端MySQL服务器之间提供透明路由。主要用以解决MySQL主从库集群的高可用、负载均衡、易扩展等问题。Router作为一个流量转发层,位于应用与MySQL服务器之间,其功能类似于LVS。
2.下载
官网:https://dev.mysql.com/downloads/router/
安装指引: https://dev.mysql.com/doc/mysql-router/8.0/en/mysql-router-installation.html
p.s.:其实下个压缩包直接解压就能用啦,同样的,找个能访问生产机器的测试服务器搞一波~
wget https://dev.mysql.com/get/Downloads/MySQL-Router/mysql-router-8.0.25-linux-glibc2.17-x86_64-minimal.tar.xz
tar -Jxvf mysql-router-8.0.25-linux-glibc2.17-x86_64-minimal.tar.xz
leah@ubuntu:/opt/mysql-router-8.0.25-linux-glibc2.17-x86_64-minimal/bin$ export PATH=`pwd`:$PATH
leah@ubuntu:/opt/mysql-router-8.0.25-linux-glibc2.17-x86_64-minimal/bin$ mysqlrouter --version
MySQL Router Ver 8.0.25 for Linux on x86_64 (MySQL Community - GPL)
3.配置
mysqlrouter目录下有个配置文件例子sample_mysqlrouter.conf:
leah@ubuntu:/opt/mysql-router-8.0.25-linux-glibc2.17-x86_64-minimal/share/doc/mysqlrouter$ ls
INFO_BIN INFO_SRC sample_mysqlrouter.conf
参考文件中的来配置就好了,由于我只是想通过服务器A来访问服务器B上的mysql,并不是真的要做什么负载均衡,所以这样配置就好啦:
# 一个高可用的标签
[routing:failover]
bind_address = 0.0.0.0
bind_port = 7001
max_connections = 1024
# 目前就支持两种 : read-write 和 read-only
# read-write:用于高可用,用于可读可写
# read-only:用于负载均衡,只读
mode = read-write
# 实际转发的地址
# 第一个socket如果可用,就一直会使用第一个
# 如果第一个socket无法连接了,才会连接到第二个socket
destinations = 服务器地址:端口
4.启动
偷个懒,直接改那份sample_mysqlrouter.conf的话,就是下面这样
nohup mysqlrouter --config /opt/mysql-router-8.0.25-linux-glibc2.17-x86_64-minimal/share/doc/mysqlrouter/sample_mysqlrouter.conf &
5.连接mysql
DBeaver或者Navicat走起,这下可以访问数据库啦~
转载请注明来源:https://www.cnblogs.com/Sherlock-L/p/14932870.html
Mysql之迂回连接术的更多相关文章
- mysql优化之连接优化(open-files-limit与table_open_cache)
MySQL打开的文件描述符限制 Can't open file: '.\test\mytable.frm' (errno: 24) OS error code : Too many open file ...
- 解决Mysql连接池被关闭 ,hibernate尝试连接不能连接的问题。 (默认mysql连接池可以访问的时间为8小时,如果超过8小时没有连接,mysql会自动关闭连接池。系统发布第二天访问链接关闭问题。
解决Mysql连接池被关闭 ,hibernate尝试连接不能连接的问题. (默认MySQL连接池可以访问的时间为8小时,如果超过8小时没有连接,mysql会自动关闭连接池. 所以系统发布第二天访问会 ...
- php使用mysql和mysqli连接查询数据
mysql: <?php $code = $_POST['code']; $status = ""; $success = ""; $scookies = ...
- [转]配置mysql允许远程连接的方法
配置mysql允许远程连接的方法 vim /etc/my.cnf注释这一行:bind-address=127.0.0.1 ==> #bind-address=127.0.0.1保存退出.mysq ...
- paip.mysql 批量kill 连接.
paip.mysql 批量kill 连接. 作者Attilax 艾龙, EMAIL:1466519819@qq.com 来源:attilax的专栏 地址:http://blog.csdn.net ...
- MySQL数据库远程连接
12.00 MySQL数据库远程连接 参考: http://www.jb51.net/article/24508.htm http://www.linuxdiyf.com/viewarticle.ph ...
- mysql 不能远程连接
不想浪费大家时间,我这文章记录了我在vagrant上架的mysql远程连接不上的问题,不过我在整理时发现这个下面这个链接,如果我一开始能找到这个我就不会绕那么多弯了.不想看我是怎么一步步调错过程的请直 ...
- MySql实现远程连接
MySql实现远程连接 1.进入mysql,创建一个新用户root,密码为root: 格式:grant 权限 on 数据库名.表名 to 用户@登录主机 identified by "用户密 ...
- Mysql命令行连接
mysql在线参考手册地址: http://dev.mysql.com/doc/refman/5.1/zh/tutorial.html#connecting-disconnecting 在linux平 ...
- Mysql 连接查询 Mysql支持的连接查询有哪些
CREATE TABLE `chx` ( `id` VARCHAR(20) NOT NULL, `name` VARCHAR(50) DEFAULT NULL, `name2` CHAR( ...
随机推荐
- 如何避免让线程摸鱼,请用异步技术 async await 拿捏他~
发现问题 你点了外卖后,会一直不做其它事情,一直等外卖的到来么? 当然不会拉! 我们来看看代码世界的: public void Query(){ // 当前线程 向 数据库服务器 发起查询命令 // ...
- saas架构之druid解析表名
public void preHandle(BoundSql boundSql, RequestEntity requestEntity) { System.out.println("要执行 ...
- nexus私服搭建的上传和下载
下载 方法1 下载应该先在nexus中创建相关的库(宿主库.代理库.仓库组),也可以使用原有的库 随后在pom文件中增加以下代码,即可从私服中下载相关的依赖包(注:依赖包的下载首先基于本地库,本地库没 ...
- 我这.NET菜鸟,用它开发RabbitMQ消息队列后,竟被老板一夜提拔为架构师
[讲故事] 自2022年末推出此工具以来,相关文章已被圈内顶尖的几家.NET头条号转载,而且短短数月,已有超100个团队/个人开发者使用它来操控RabbitMQ消息队列,反响可谓十分火爆.故本次经典重 ...
- CentOS安装mysql、MariaDB以及更改数据库存储路径
注意:此方法只适用于新的机器或没有重要数据库表(可随意删除)的机器安装,如需升级版本参考下方链接!!! https://www.jianshu.com/p/955ff6065935 一.安装操作 1. ...
- 分布式云原生平台Kurator v0.2.0正式发布!一键构建分布式云原生平台
摘要:北京时间2023年2月9日,Kurator 正式发布 v0.2.0 版本. 本文分享自华为云社区<分布式云原生平台Kurator v0.2.0正式发布!一键构建分布式云原生平台>,作 ...
- 时间轮TimeWheel工作原理解析
时间轮工作原理解析 一.时间轮介绍 1.时间轮的简单介绍 时间轮(TimeWheel)作为一种高效率的计时器实现方案,在1987年发表的论文Hashed and Hierarchical Timing ...
- el-input 限制只能输入正整数
1.前端页面 <el-row :gutter="20"> <el-col :span="20"> <el-form-item la ...
- 原生微信小程序跳转传参 : [非TabBar跳转传参] 和 [TabBar跳转传参]
一般常用的微信小程序跳转分为两种 1.非TabBar跳转 2.TabBar跳转 1.非TabBar跳转 非TabBar页面的跳转通常使用wx.navigateTo来跳转页面,在链接后面加 ? 传参,如 ...
- Spring依赖注入问题
记录一下最近复习的Spirng依赖注入问题 主要介绍两个注入方式 也是用的最多的 1.构造方法注入 2.Setter注入. 参考文档:https://blog.csdn.net/weixin_5541 ...