如何用java 5分钟实现一个最简单的mysql代理服务器

如何用java 5分钟实现一个最简单的mysql代理服务器,第1张

如何用java 5分钟实现一个最简单的mysql代理服务器

首先,准备开发工具套件,我们并不会引入过多工具包,仅仅需要:

java8

vert.x 3

如果你是用maven做为项目管理工具,请将vert.x 3引入:

1

2

3

4

5

<dependency>

<groupId>io.vertx</groupId>

<artifactId>vertx-core</artifactId>

<version>3.3.2</version>

</dependency>

代码实现:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

package

com.maxleap.mysqlproxy

import

io.vertx.core.AbstractVerticle

import

io.vertx.core.Vertx

import

io.vertx.core.logging.Logger

import

io.vertx.core.logging.LoggerFactory

import

io.vertx.core.net.NetClient

import

io.vertx.core.net.NetServer

import

io.vertx.core.net.NetSocket

/**

*

@author sneaky

*

@since 1.0.0

*/

public

class

MysqlProxyServer

{

private

static

final

Logger

logger

=

LoggerFactory.getLogger(MysqlProxyServer.class)

public

static

void

main(String[]

args)

{

Vertx.vertx().deployVerticle(new

MysqlProxyServerVerticle())

}

public

static

class

MysqlProxyServerVerticle

extends

AbstractVerticle

{

private

final

int

port

=

3306

private

final

String

mysqlHost

=

"10.10.0.6"

@Override

public

void

start()

throws

Exception

{

NetServer

netServer

=

vertx.createNetServer()//创建代理服务器

NetClient

netClient

=

vertx.createNetClient()//创建连接mysql客户端

netServer.connectHandler(socket

->

netClient.connect(port,

mysqlHost,

result

->

{

//响应来自客户端的连接请求,成功之后,在建立一个与目标mysql服务器的连接

if

(result.succeeded())

{

//与目标mysql服务器成功连接连接之后,创造一个MysqlProxyConnection对象,并执行代理方法

new

MysqlProxyConnection(socket,

result.result()).proxy()

具体安装步骤:

1、双击 mysql-installer-community-5.6.24.0 安装,接受用户许可协议。

2、选择安装类型

1)Developer Default 默认安装类型,开发模式,该选项代表典型个人用桌面工作站,假定机器上运行着多个桌面应用程序,将MySQL服务器配置成使用最少的系统资源;

2)Server only 仅作为服务器,该选项代表服务器,MySQL服务器可以同其它应用程序一起运行,例如FTP、email和web服务器,MySQL服务器配置成使用适当比例的系统资源;

3)Client only 仅作为客户端,Full 完全安装类型,Custom自定义安装类型 ;

4)作为服务器类型数据库安装,需选自定义安装类型,安装需自定义安装路径。

3、选择安装选项,MySql Servers必选项,核心组件,可根据系统位数对应选择,Applications应用和MySQL Connectors连接器可不选,Documentation类似于帮助文档资料可选。

4、选择文件安装目录路径及数据保存目录路径。

5、选择配置选项, Developer Machine(开发机器),Server Machine(服务器),Dedicated MySQL Server Machine(专用MySQL服务器),前二个上面有讲描述,专用MySQL服务器-该选项代表只运行MySQL服务的服务器,假定没有运行其它应用程序,MySQL服务器配置成使用所有可用系统资源。如果服务程序及库装在同一台机上,建议选Server Machine,下面可勾选Show Advanced Options高级选项,作为初学者,选择Developer Machine即可。

6、设置root密码,配置windows服务默认。

7、配置日志,可自定义路径存放日志文档方便管理,Error Log错误日志:记录启动、运行或停止mysqld时出现的问题General Log通用日志:记录建立的客户端连接和执行的语句,占用资源多默认不启用Show Query Log慢查询日志:记录所有执行时间超过long_query_time秒的所有查询或不使用索引的查询,Bin Log二进制日志,记录所有更改数据的语句,还用于复制,启用主从备份时一定要启用此日志。

8、应用服务配置安装,直到结束。

注:

1、自定义安装才能选择路径。

2、根据作用选择安装服务类型。


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/576312.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-07-04
下一篇2023-07-04

发表评论

登录后才能评论

评论列表(0条)

    保存