Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过tcp连接使用mysql_Mysql_Sockets_Tcp - Fatal编程技术网

通过tcp连接使用mysql

通过tcp连接使用mysql,mysql,sockets,tcp,Mysql,Sockets,Tcp,我有一个mysql数据库,用docker设置 docker-compose.yml version: '2' services: db: image: mysql:5.7 environment: MYSQL_ROOT_PASSWORD: 1234 MYSQL_DATABASE: foo MYSQL_USER: root MYSQL_PASSWORD: 1234 ports: - "3306:3306" 我想

我有一个mysql数据库,用docker设置

docker-compose.yml

version: '2'

services:
  db:
    image: mysql:5.7
    environment:
      MYSQL_ROOT_PASSWORD: 1234
      MYSQL_DATABASE: foo
      MYSQL_USER: root
      MYSQL_PASSWORD: 1234
    ports:
    - "3306:3306"
我想通过
TCP
访问这个mysql套接字,登录我的数据库并执行一个简单的mysql命令

我正试图在rust中实现这一点,但任何其他编程语言的解决方案都是合适的

 let mut stream = TcpStream::connect("127.0.0.1:3306").expect("Could not connect");

 let mut cmd = "CREATE TABLE foo.payment (
                         customer_id int not null,
                         amount int not null,
                         account_name text
                     )".as_bytes();
 let foo = stream.write(cmd).expect("Could not write to tcp socket");
我不太了解TCP和套接字,但我想了解更多

我的问题:

如何使用TCP编写某种mysql驱动程序?我不想使用现有的库来处理这样的内容,因为我想更好地理解

  • 登录我的mysql数据库
  • 执行查询

  • 阅读MySQL文档,如果其中包含有关协议的信息,请阅读libmysql源代码。。。这不是一件小事,你不想这么做。您想使用现有的MySQL客户端库。请阅读MySQL文档,如果其中包含有关协议的信息,请阅读libmysql源代码。。。这不是一件小事,你不想这么做。您希望使用现有的MySQL客户端库。