淘宝店铺网站建设,网站建设有哪些环节,网易公司邮箱,广州建网站加备案文章目录 【MySQL】如何使用Named Pipe协议(Windows)连接MySQL数据库连接MySQL的协议使用Named Pipe协议(Windows)连接MySQL步骤1#xff1a;确认MySQL服务器已启用Named Pipe连接启动Named Pipe连接方法 步骤2#xff1a;客户端使用Named Pipe连接MySQL服务器。例1#xff… 文章目录 【MySQL】如何使用Named Pipe协议(Windows)连接MySQL数据库连接MySQL的协议使用Named Pipe协议(Windows)连接MySQL步骤1确认MySQL服务器已启用Named Pipe连接启动Named Pipe连接方法 步骤2客户端使用Named Pipe连接MySQL服务器。例1客户端使用Named Pipe连接MySQL服务器例2客户端指定Socket使用Named Pipe连接MySQL服务器 常见错误 小结 MySQL入门02关于MySQL连接的ABC 【MySQL】如何使用Named Pipe协议(Windows)连接MySQL数据库 【MySQL】如何使用Shared-memory协议(Windows)连接MySQL数据库 【MySQL】如何使用Unix Sockets 协议连接MySQL数据库 【MySQL】如何使用Named Pipe协议(Windows)连接MySQL数据库
连接MySQL的协议
在MySQL中可以通过指定 --protocol参数选择连接MySQL的协议。
连接协议Connection Protocals
--protocol{TCP|SOCKET|PIPE|MEMORY}TCP/IP (ALL) -Transmission Control Protocal/Internet Protocal-Connection:local remote-Supports Clasic X protocol
Socket file (Unix including Linux/Mac) -Connection:local -Supports Clasic X protocol
Named Pipe (Win) -Connection:local -Supports Clasic
Shared Memory (Win) -Connection:local -Supports Clasic参考 https://dev.mysql.com/doc/refman/8.0/en/connection-options.html#option_general_protocol 4.2.3 Command Options for Connecting to the Server
使用Named Pipe协议(Windows)连接MySQL
在Windows环境中和Unix Sockets连接MySQL相似可以用Named Pipe协议连接MySQL。 下面介绍如何使用Named Pipe连接MySQL的步骤。
步骤1确认MySQL服务器已启用Named Pipe连接
查看是否启用Named Pipe连接。
mysql SHOW GLOBAL VARIABLES LIKE named_pipe;
----------------------
| Variable_name | Value |
----------------------
| named_pipe | OFF |
----------------------
1 row in set, 1 warning (0.04 sec)mysql如果值是ON则表示启用OFF表示禁用状态。
启动Named Pipe连接方法
打开配置文件my.ini将enable-named-pipe变量和socket变量前的注释去掉并保存。
例
# The next three options are mutually exclusive to SERVER_PORT below.
# skip-networking
enable-named-pipe
# shared-memory# shared-memory-base-nameMYSQL# The Pipe the MySQL Server will use.
socketMYSQL※ my.ini文件的位置可以通过【mysql --help】命令中的Default options内容查看。 例
Default options are read from the following files in the given order:
C:\windows\my.ini C:\windows\my.cnf C:\my.ini C:\my.cnf E:\Soft\MySQL8.0\my.ini E:\Soft\MySQL8.0\my.cnf重新启动MySQL服务器。
net stop MySQL服务名
net start MySQL服务名例
C:\Users\Administratornet stop mysql80
MySQL80 服务正在停止.
MySQL80 服务已成功停止。C:\Users\Administratornet start mysql80
MySQL80 服务正在启动 ..
MySQL80 服务已经启动成功。3.查看Named Pipe连接启用状态。
C:\Users\Administratormysql -u root -p
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 8
Server version: 8.0.28 MySQL Community Server - GPLCopyright (c) 2000, 2022, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type help; or \h for help. Type \c to clear the current input statement.mysql SHOW GLOBAL VARIABLES LIKE named_pipe;
----------------------
| Variable_name | Value |
----------------------
| named_pipe | ON |
----------------------
1 row in set, 1 warning (0.01 sec)mysql SHOW VARIABLES LIKE socket;
----------------------
| Variable_name | Value |
----------------------
| socket | MYSQL |
----------------------
1 row in set, 1 warning (0.01 sec)mysql exit
Bye步骤2客户端使用Named Pipe连接MySQL服务器。
例1客户端使用Named Pipe连接MySQL服务器
通过指定–protocolpipe客户端可以使用Named Pipe连接MySQL服务器。
C:\Users\Administratormysql --protocolpipe -u root -p
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 10
Server version: 8.0.28 MySQL Community Server - GPLCopyright (c) 2000, 2022, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type help; or \h for help. Type \c to clear the current input statement.mysql \s
--------------
mysql Ver 8.0.28 for Win64 on x86_64 (MySQL Community Server - GPL)Connection id: 10
Current database:
Current user: rootlocalhost
SSL: Not in use
Using delimiter: ;
Server version: 8.0.28 MySQL Community Server - GPL
Protocol version: 10
Connection: Named pipe: MySQL
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: gbk
Conn. characterset: gbk
UNIX socket: MySQL
Binary data as: Hexadecimal
Uptime: 7 min 22 secThreads: 2 Questions: 16 Slow queries: 0 Opens: 137 Flush tables: 3 Open tables: 56 Queries per second avg: 0.036
--------------mysql不指定Socket的时候会使用默认的Named pipe: MySQL。
例2客户端指定Socket使用Named Pipe连接MySQL服务器
C:\Users\Administratormysql --protocolpipe -u root -p --socketMYSQL
Enter password: ********
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 11
Server version: 8.0.28 MySQL Community Server - GPLCopyright (c) 2000, 2022, Oracle and/or its affiliates.Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.Type help; or \h for help. Type \c to clear the current input statement.mysql \s
--------------
mysql Ver 8.0.28 for Win64 on x86_64 (MySQL Community Server - GPL)Connection id: 11
Current database:
Current user: rootlocalhost
SSL: Not in use
Using delimiter: ;
Server version: 8.0.28 MySQL Community Server - GPL
Protocol version: 10
Connection: Named pipe: MYSQL
Server characterset: utf8mb4
Db characterset: utf8mb4
Client characterset: gbk
Conn. characterset: gbk
UNIX socket: MYSQL
Binary data as: Hexadecimal
Uptime: 13 min 4 secThreads: 2 Questions: 25 Slow queries: 0 Opens: 138 Flush tables: 3 Open tables: 57 Queries per second avg: 0.031
--------------mysql exit
Bye常见错误
当服务器Named Pipe连接未启用的时候使用Named Pipe连接会报如下的错误
C:\Users\Administratormysql --protocolpipe -u root -prootroot
mysql: [Warning] Using a password on the command line interface can be insecure.
ERROR 2017 (HY000): Cant open named pipe to host: . pipe: MySQL (2)可参考如上的方法在服务器端进行相应的配置。
小结
本文介绍了在Windows环境中如何使用Named Pipe协议连接MySQL数据库的方法。