连接MySQL即为连接进程与MySQL实例进行通信,其本质是进程通信。连接方式包括以下几种:
1、TCP/IP套接字
TCP/IP套接字方式是MySQL在任何平台下都提供的连接方式,也是网络中使用最多的一种方式。这种方式在TCP/IP连接上建立一个基于网络的连接请求,一般情况下客户端在一台服务器上,而MySQL实例在另一台服务器上,这两台机器通过一个TCP/IP网络连接。在Java中使用JDBC、ODBC等方式连接数据库即为此方式。
例如:
运行->cmd->cd进入mysql安装目录bin文件下->在命令行下输入mysql -h127.0.0.1 --port=3306 -uroot -proot
其中,127.0.0.1为IP地址,3306为端口号;(mysql实例在本地且端口号默认为3306的可省略这两项)用户名为root,密码为root。这样,就可以对MySQL数据库进行一些数据库操作了,如DDL & DML等。
2、命名管道和共享内存
在windows中,如果两个需要通信的进程在同一台服务器上,即可采用命名管道和共享内存。其中:
命名管道需在配置文件中启用--enable-named-pipe选项;
共享内存需在配置文件中添加--shared-memory,且客户端在连接时需使用-protocol=memory选项。
3、Unix域套接字
1、TCP/IP套接字
TCP/IP套接字方式是MySQL在任何平台下都提供的连接方式,也是网络中使用最多的一种方式。这种方式在TCP/IP连接上建立一个基于网络的连接请求,一般情况下客户端在一台服务器上,而MySQL实例在另一台服务器上,这两台机器通过一个TCP/IP网络连接。在Java中使用JDBC、ODBC等方式连接数据库即为此方式。
例如:
运行->cmd->cd进入mysql安装目录bin文件下->在命令行下输入mysql -h127.0.0.1 --port=3306 -uroot -proot
其中,127.0.0.1为IP地址,3306为端口号;(mysql实例在本地且端口号默认为3306的可省略这两项)用户名为root,密码为root。这样,就可以对MySQL数据库进行一些数据库操作了,如DDL & DML等。
2、命名管道和共享内存
在windows中,如果两个需要通信的进程在同一台服务器上,即可采用命名管道和共享内存。其中:
命名管道需在配置文件中启用--enable-named-pipe选项;
共享内存需在配置文件中添加--shared-memory,且客户端在连接时需使用-protocol=memory选项。
3、Unix域套接字
在unix和linux环境下,还可以使用Unix域套接字。其并非一个网络协议,只能在mysql客户端和数据库实例在同一台服务器上的情况下使用。
参考:<MySQL技术内幕 InnoDB存储引擎>