关于MySql链接url参数的设置

 

jdbc.driverClassName=com.mysql.jdbc.Driver
jdbc.url=jdbc:mysql://localhost:3306/database?useUnicode=true&characterEncoding=utf8&autoReconnect=true&rewriteBatchedStatements=TRUE
jdbc.username=root
jdbc.password=password

 

database.url=jdbc:mysql://database_server:3306/oauth?autoReconnect=true&useUnicode=true&createDatabaseIfNotExist=true&characterEncoding=utf8&useSSL=true&serverTimezone=UTC

 

 

特别说明其中的jdbc.url配置:如果你已经升级好了mysql-connector,其中的characterEncoding=utf8可以被自动被识别为utf8mb4(当然也兼容原来的utf8),而autoReconnect配置我强烈建议配上,我之前就是忽略了这个属性,导致因为缓存缘故,没有读取到DB最新配置,导致一直无法使用utf8mb4字符集,多么痛的领悟!!

没有让mysql驱动开启批量执行sql的开关。

怎么开启呢?在拼装mysql链接的url时,为其加上allowMultiQueries参数,设置为true,如下:

jdbc.jdbcUrl=jdbc:mysql://127.0.0.1:3306/database?useUnicode=true&characterEncoding=utf8&allowMultiQueries=true

 

mysql JDBC URL格式如下: 

jdbc:mysql://[host:port],[host:port].../[database][?参数名1][=参数值1][&参数名2][=参数值2]... 

常用的几个较为重要的参数: 

参数名称 参数说明 缺省值 最低版本要求 
user 数据库用户名(用于连接数据库) 所有版本 
passWord 用户密码(用于连接数据库) 所有版本 
useUnicode 是否使用Unicode字符集,如果参数characterEncoding设置为gb2312或gbk,本参数值必须设置为true false 1.1g 
characterEncoding 当useUnicode设置为true时,指定字符编码。比如可设置为gb2312或gbk false 1.1g 
autoReconnect 当数据库连接异常中断时,是否自动重新连接? false 1.1 
autoReconnectForPools 是否使用针对数据库连接池的重连策略 false 3.1.3 
failOverReadOnly 自动重连成功后,连接是否设置为只读? true 3.0.12 
maxReconnects autoReconnect设置为true时,重试连接的次数 3 1.1 
initialTimeout autoReconnect设置为true时,两次重连之间的时间间隔,单位:秒 2 1.1 
connectTimeout 和数据库服务器建立socket连接时的超时,单位:毫秒。 0表示永不超时,适用于JDK 1.4及更高版本 0 3.0.1 
socketTimeout socket操作(读写)超时,单位:毫秒。 0表示永不超时 0 3.0.1 

对应中文环境,通常mysql连接URL可以设置为: 

复制代码代码如下:

jdbc:mysql://localhost:3306/test?user=root&password=&useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly=false 


在使用数据库连接池的情况下,最好设置如下两个参数: 

复制代码代码如下:

autoReconnect=true&failOverReadOnly=false 


需要注意的是,在xml配置文件中,url中的&符号需要转义成&。比如在tomcat的server.xml中配置数据库连接池时,mysql jdbc url样例如下: 

复制代码代码如下:

jdbc:mysql://localhost:3306/test?user=root&password=&useUnicode=true&characterEncoding=utf8&autoReconnect=true&failOverReadOnly 

http://www.jb51.net/article/47764.htm




jdbc:mysql://localhost:3306:test这句里面分如下解析:
jdbc:mysql:// 是指JDBC连接方式;
localhost: 是指你的本机地址;
3306 SQL数据库的端口号;
test 就是你要连接的数据库的地址。




打开任意浏览器,在地址栏中输入:“localhost/phpmyadmin”并点击“Enter”回车键进入下一步。(如果页面打不开,检查一下电脑的Apache服务器和MySQL数据库是否已经开启)

2.在PhpMyAdmin管理界面中,找到“数据库”字样按钮并点击进入下一步

3.在界面的“新建数据库”下方的方框中输入自己需要创建的数据库名称,数据库的编码选择“utf8_general_ci”这一栏,并点击页面后方的“创建”按钮完成新数据库的建立。

4.在PhpMyAdmin界面左边栏的数据库列表中,找到自己刚才创建的数据库名称,点击进入界面,在右方的顶部菜单栏中找到“导入”按钮并点击,然后找到页面中的“选择”按钮点击进入下一步。

5.此时已经进入数据库文件的选择窗口,找到自己将要导入的数据库文件,然后点击窗口右下方的“打开”按钮进入下一步。

6.此时数据库会自动加载进入PhpMyAdmin中,找到页面中的“执行”按钮点击完成数据库的导入操作。

遇到导入过大文件时,首先检查php.ini 配置文件中的以下三个地方,upload_max_filesize, memory_limit 和post_max_size,并且推荐修改的值要稍大于导入的巨大sql数据库文件;依照这个提示,我修改了以上三个在php.ini中的值以后,重启 了php环境,再次导入时,虽然phpMyAdmin还是显示导入最大限制:20,480 KB,但巨大的80M数据库文件已经被成功的导入了。

ikasa007  | php工程师

擅长: IT

其他回答

一、打开phpmyadmin,找到导入的地方,点击进入导入界面。

二、点击选择文件,可以上传SQL文件(注意后面的限制,默认是2M,这个可以根据需要自行修改配置文件)


选好后,点击下面的执行,看到ok的结果,则导入成功!


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值