MySQL连接层-(通讯协议-线程-验证)

通讯协议

通讯协议 连接方式 所支持的操作系统
TCP/IP local,remote AII
Socket file local

UNIX-derived operating systems including

Linux,BSD,Max OS X

Shared memory local Windows
Named pipes local Windows

1.TCP/IP(传输控制协议/互联网协议):-是用于连接互联网上主机的一套通信协议

-使用IP地址或DNS主机名识别主机

-使用TCP端口号识别每个主机上的特定服务

-MySQL默认TCP端口号:3306-启用不同主机之间的连接

使用主机名和默认端口的示例:

语句:mysql --host=mysqlhost -uroot -p

使用一个IP地址和一个备选端口的示例:

语句:mysql -h 192.168.1.8 -p 3309 -uroot -p

2.socket :进程间通信的一种形式

-用于在同一台机器上的俩个进程之间形成双向通信链路的一端

要求服务器在本地系统上创建一个带有套接字(-S)选项的套接字文件

-客户端在连接时指定套接字文件。

-这是适合Linux的最佳连接类型。

使用、var/lib/mysql.sock套接字文件的实例:

mysql -S /var/lib/mysql.sock -uroot -p

使用默认套接字文件/tmp/mysql.sock的实例:

mysql -uroot -p

如果没有指定主机,则MySQL假设为-h本地主机

3.Shared memory(共享服务器):-服务器创建一个命名的共享内存块,同一主机上的客户端进程可以访问。

-共享内存默认被禁用

-使用默认共享内存基本名称MYSQL的示例:

mysql --protocol=memory -uroot -p

4.Named pipes(命名管道):-在Windows中,命名管道的工作放式很像UNIX套接字。

-服务器创建命名管道,客户端写入改管道并从中读取

-命名管道支持读/写操作,以及都武器应用程序的显示被动模式。

-示例:

mysql --protocol -uroot -p

线程:

服务器为每个活动客户端连接创建一个连接线程

   -该客户机执行的所有语句都由单个服务器线程执行

   -当客户端断开连接时,服务器销毁线程

线程池插件分别管理连接和服务器线程

   -使用线程组管理客户段连接

   -每个线程组在任何时间点都只允许一个短时间运行的语句:

       -减少服务器线程数

       -一个线程组允许多个长时间运行的语句

  -根据事务成员身份区分高优先级语句和低优先级语句

       -正在运行的事务中无惧具有高优先级

       -长时间运行的事务得到改进

验证:

连接层在可用时使用安全,加密的连接 

  -如果服务器主机安装了OpenSSL,MySQL包安装程序创建SSL密钥

           -安装程序调用 mysql_ssl_rsa_setup 实用程序来创建密钥

           -如果从二进制存档安装,需要手动调用此实用程序

如果密钥可用, MySQL 客户机将使用 SSL
       -密钥位于数据库目录中
       -将客户端密钥复制到远程客户端以启用加密的远程连接
如果SSL不可用,则连接将不加密
       -可以将服务器和客户机配置为强制使用SSL
【一】

你可能感兴趣的:(mysql)