从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

macOS下visual studio C#加载mySql

本文在上一节的基础上,添加了mysql数据库的功能。client发送信息给服务器后,服务器将收到的消息保存在数据库中。

如果client发送的消息为特殊指令,服务器会调用数据库数据。例如服务器收到消息字符串为“_SHOW_ME_MESSAGE”时,

将发送服务器中保存的全部消息给client。

------------------------------------------------------------

1.安装mySql

首先下载mySql:https://dev.mysql.com/downloads/mysql/

安装的时候会设置密码

安装后打开终端输入命令:mysql

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

 

会发现没有这条指令,原来是mySql没有添加环境变量。

根据自己的shell添加环境变量,一般大家的都是bash

那就在终端中输入指令:open ~/.bash_profile

在打开的文本末尾添加一行:PATH=$PATH:/usr/local/mysql/bin

保存后关闭文本,在终端中执行指令激活环境变量:source ~/.bash_profile

而我的shell是zsh,那就是:

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

然后在文本中添加:PATH=$PATH:/usr/local/mysql/bin

再关闭文本,激活环境变量:

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库 

然后输入命令:mysql -uroot -p

输入安装的时候设的密码,就进入mysql环境啦

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

mysql可以通过命令行指令操作,指令可以通过help;指令查看,也可以去官网看文档。

不过菜鸟教程这个网站上的介绍是中文的:https://www.runoob.com/mysql/mysql-tutorial.html

另外,最好还是安装一个可视化的工具管理你的数据库:navicat

下载地址:https://www.navicat.com.cn/products/navicat-premium

------------------------------------------------------------

2.mySql中建立数据库

安装好后,打开navicat新建mysql连接:

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

密码就是上面那个密码,连接名如果不写的话也会自动生成的。

然后再新建一个数据库,就叫做Notepad

在数据库中新建表:

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

建好之后就是这样子的,我手动添加了一条记录:1 bob nothing,这条记录什么用都没有啦

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

上面新建数据库添加表等操作都可以通过终端输入指令的方式完成

我们是用C#脚本访问数据库,进行添加删除等操作也都是利用C#写入mysql指令进行的。

mysql官网的文档中提供的C#,C++,PHP等多种语言的调用方法,官方说法是X协议

C#的调用协议在:https://dev.mysql.com/doc/dev/connector-net/8.0/html/connector-net-reference.htm 

------------------------------------------------------------

 3.为C#工程添加mySql引用

首先下载mySql的dll文件

https://dev.mysql.com/downloads/connector/net/1.0.html

 选择这个:

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

 

在visual studio中打开菜单栏:项目->添加引用

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

 添加了dll文件后在C#脚本中使用mysql函数就没问题了

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

------------------------------------------------------------

 4.本文代码在:  

https://github.com/isyiming/socket/tree/master/3.socket_mysql

这个系列的学习记录我会一直更新下去,没事的话给我比个心^~^

 

首先运行socket_mysql_services服务器脚本,在运行socket_mysql_client客户端脚本,发送消息给服务器

从零开始ming的多人联机游戏(3)为socket通讯添加mysql数据库

 

上一篇:Git push之fatal: refusing to merge unrelated histories


下一篇:git merge合并时遇上refusing to merge unrelated histories的解决方案