MySQL连接方式的说明

http://icbm.iteye.com/blog/1840673

MySQL除了最常见的TCP连接方式外,还提供SOCKET(LINUX默认连接方式)、PIPE和SHARED MEMORY连接方式。 
各连接方式的服务器、客户端启动选项,及连接默认值见下表:

TCP连接(Linux,Windows):

目标

启动选项

默认值

SERVER

--port=PORT

3306

CLIENT

--protocol=TCP --port=PORT

3306

SOCKET连接(Linux):

目标

启动选项

默认值

SERVER

--enable-named-pipe --socket=SOCKET

/tmp/mysql.sock

CLIENT

--protocol=SOCKET --socket=SOCKET

/tmp/mysql.sock

PIPE连接(Windows):

目标

启动选项

默认值

SERVER

--enable-named-pipe --socket=SOCKET

MYSQL

CLIENT

--protocol=PIPE --socket=SOCKET

MYSQL

SHARED MEMORY连接(Windows):

目标

启动选项

默认值

SERVER

--shared-memory --shared-memory-base-name=MEMORY

MySQL

CLIENT

--protocol=MEMORY --shared-memory-base-name=MEMORY

MySQL

下面说明一下在Linux平台下使用socket形式的具体步骤,这样就可以不用3306的mysql服务端口了

junixsocket

https://code.google.com/p/junixsocket

junixsocket-1.3-bin.tar

junixsocket-1.3.jar

junixsocket-mysql-1.3.jar

tomcat的配置

由于dbcp,c3p0的连接池不支持这个,因此使用jdbc的连接池配置,具体的参考文档见

https://tomcat.apache.org/tomcat-7.0-doc/jdbc-pool.html

applicationContext.xml

<context:property-placeholder

ignore-unresolvable="true" location="classpath:/application.properties" />

<bean id="dataSource" class="org.apache.tomcat.jdbc.pool.DataSource"

destroy-method="close">

<!-- Connection Info -->

<property name="driverClassName" value="${jdbc.driver}" />

<property name="url" value="${jdbc.url}" />

<property name="username" value="${jdbc.username}" />

<property name="password" value="${jdbc.password}" />

<property name="defaultCatalog" value="${jdbc.defaultCatalog}" />

<property name="dbProperties">

<props>

<prop key="socketFactory">org.newsclub.net.mysql.AFUNIXDatabaseSocketFactory</prop>

<prop key="junixsocket.file">/tmp/mysql.sock</prop>

</props>

</property>

<bean id="sessionFactory"

class="org.springframework.orm.hibernate4.LocalSessionFactoryBean"

p:dataSource-ref="dataSource">

<!-- mapping的配在可以用spring提供的自动扫描包 -->

<property name="packagesToScan" value="cn.csbit.**.model" />

<property name="hibernateProperties">

<props>

<prop key="javax.persistence.validation.mode">none</prop>

<prop key="hibernate.dialect">org.hibernate.dialect.MySQL5Dialect</prop>

<prop key="hibernate.show_sql">false</prop>

<prop key="hibernate.format_sql">false</prop>

</props>

</property>

</bean>

和dbcp的区别

application.properties

#mysql database setting

jdbc.driver=com.mysql.jdbc.Driver

jdbc.url=jdbc:mysql://?useUnicode=true&characterEncoding=utf-8&useLocalSessionState=true&autoReconnect=true

jdbc.username=***

jdbc.password=***

jdbc.defaultCatalog=***

jar包和运行库

tomcat-jdbc.jar

tomcat-juli.jar

tomcat-juli-adapters.jar

junixsocket-1.3-bin.tar中lib-native拷贝到 /opt/newsclub 下

tomcat通过socket连接MySQL,不再占用服务端口【linux】的更多相关文章

  1. tomcat之jsp连接mysql数据库

    一.下载并部署mysql连接类 首先下载mysql连接类,下载地址https://dev.mysql.com/downloads/connector/j 如图所示,选择第一个箭头所指的平台无关版本,然 ...

  2. tomcat使用jdbc连接mysql出现的错误

    出现的错误:java.lang.ClassNotFoundException: com.mysql.jdbc.Driver 前提: 已经在工程的build path中添加了驱动包(mysql-conn ...

  3. Ubuntu下使用C语言连接Mysql 8.0客户端教程

    Ubuntu下如何C语言程序连接MYSQL 8.0(全教程) 1. 安装GCC(略) 2. 安装mysql(本人使用的是最新MySQL 8.0版本) sudo apt install mysql-cl ...

  4. 大话tomcat之tomcat连接mysql

    研究主题:tomcat连接mysql 一.tomcat连接mysql的两种连接方式:简单连接(不使用连接池)使用tomcat连接池 二.简单分析:(简介部分摘自一篇博客,觉得写得非常赞,读了非常有快感 ...

  5. 2-22-实现jsp通过tomcat连接mysql

    所有软件的版本如下: MySQL-Connector-Java: mysql-connector-java-5.1.36 Tomcat: apache-tomcat-8.0.26 JDK: jdk-8 ...

  6. 连接Mysql提示Can’t connect to local MySQL server through socket的解决方法

    mysql,mysqldump,Mysqladmin,php连接mysql服务常会提示下面错误: ERROR 2002 (HY000): Can't connect to local MySQL se ...

  7. PHP连接MySQL报错:SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket 'MySQL' (2)

    如下所示,PHP连接MySQL报错: SQLSTATE[HY000] [2002] Can't connect to local MySQL server through socket 'MySQL' ...

  8. linux服务器初步印象,远程连接mysql数据库,传输文件,启动/关闭tomcat命令

    1.连接服务器数据库,以Navicat连接mysql为例 1.1 常规 新建连接,连接名,主机名或ip地址:127.0.0.1 端口:3306用户名:(服务器端)root密码:(服务器端)pwd 1. ...

  9. Ubuntu14连接MySql报错“can't connect to local mysql server through socket '/var/run/mysqld/mysqld.sock'”

    起因:我在Ubuntu14 64位系统中安装mysql后,后来通过mysql -u用户名 -p密码 的命令连接 Mysql数据库时,报错"can't connect to local mys ...

随机推荐

  1. C#抓取天气数据

    使用C#写的一个抓取天气数据的小工具,使用正则匹配的方式实现,代码水平有限,供有需要的同学参考.压缩包中的两个sql语句是建表用的. http://files.cnblogs.com/files/yu ...

  2. C# 控制台或者winform程序开启http的监听状态

    1 public class THttpListener { HttpListener listerner; /// <summary> /// /// </summary> ...

  3. SQL Server代理(2/12):作业步骤和子系统

    SQL Server代理是所有实时数据库的核心.代理有很多不明显的用法,因此系统的知识,对于开发人员还是DBA都是有用的.这系列文章会通俗介绍它的很多用法. SQL Server代理作业有一系列的一个 ...

  4. Java魔法堂:JVM的运行模式

    一.前言 JVM有Client和Server两种运行模式.不同的模式对应不同的应用场景,而JVM也会有相应的优化.本文将记录JVM模式的信息,以便日后查阅. 二.介绍 在$JAVA_HOME/jre/ ...

  5. 在浏览器输入网址到页面加载完毕中间到底发生了什么?(Browser-->Server)

    最近在学习韩老师的php视频,中间有讲到发送请求到服务器返回内容,以前对这个理解并不深刻,虽然以前也知道一部分,这次听了之后收获良多:所以我就画了个流程图,从浏览器输入网址到服务器返回信息,浏览器渲染 ...

  6. Make something people want

    <黑客与画家>开头首先介绍了书的作者格雷厄姆的其人其事,他的成长涉猎很多,大学学哲学,研究生学计算机,博士时对绘画感兴趣,后来做了两年画家,但是入不敷出,后来他和朋友开始合伙开发一个搭建网 ...

  7. 扫描线 + 线段树 : 求矩形面积的并 ---- hnu : 12884 Area Coverage

    Area Coverage Time Limit: 10000ms, Special Time Limit:2500ms, Memory Limit:65536KB Total submit user ...

  8. Web API接口设计经验总结

    在Web API接口的开发过程中,我们可能会碰到各种各样的问题,我在前面两篇随笔<Web API应用架构在Winform混合框架中的应用(1)>.<Web API应用架构在Winfo ...

  9. [小工具]CSS内嵌样式自动提取器

    逐行分析,将内联样式提取出来,并自动编号代替的一个小工具软件 注:style=""(此处必须是标准的双引号!) http://files.cnblogs.com/quejuwen/ ...

  10. html5学习笔记6-- canvas

    绘制普通直线,先看效果图: 实现代码如下: <!DOCTYPE html> <html> <head lang="en"> <meta c ...