MySQL连接时快时慢的问题解决
my.ini里的那个tmp_table_size的值.原来tmp_table_size=16M.我改为32M
然后重启MYSQL还是没解决问题.
只好重启服务器试试了,结果重启后CPU正常了.不过还是没找出是什么原因导致MYSQL占用那么多CPU资源.
=====================================
修改hosts文件,加入一行
172.16.59.12 abc
修改成功以后ping abc应该有返回
以后直接在程序中用abc连接数据库,不要用172.16.59.12
=====================================
my.cnf里修改配置,禁用DNS反向解析:
[mysqld]
skip-name-resolve
skip-grant-tables
补充--skip-name-resolve这个选项的作用:
mysql客户端每次访问db,mysql就会试图去解析来访问的机器的hostname,并缓存到hostname cache,如果这时解析不了,等一段时间会失败,数据才能被取过来。
若使用–skip-grant-tables系统将对任何用户的访问不做任何访问控制,但可以用 mysqladmin flush-privileges或mysqladmin reload来开启访问控制;默认情况是show databases语句对所有用户开放,
如果mysql服务器没有开远程帐户,就在my.ini里面加上skip-grant-tables
=====================================
在高并发高流量的情况下,基于数据库驱动的应用系统很容易出现瓶颈,这个瓶颈首先就是max_connections,即数据库的同时最大连接数.在MySQL安装的时候默认只有100个。增大这个连接数能马上起到效果。但是并不是能无限量增加,我在window服务器下和linux服务器下分别做了实验。
=====================================
修改my.cnf
1. 注释掉 # skip-networking
2. 给MYSQL绑定IP bind-address = 123.45.67.89 # server IP address
=====================================
问题的出现是这样的,我的一个web应用中有一个列表页面,遇到了n+1问题,就是打开这个页面,列表中有n条信息,就会产生n+1条sql。打开这个页面很慢,需要1分钟多。然而,这个问题只在测试环境出现,生产环境和本地开发环境均为出现此问题。
经过跟踪和分析,发现问题出在获取连接的时候,由于没有使用连接池,这n+1条sql,经常就会遇到获取连接慢的。如下为日志:
2009-11-23 13:41:20,679 INFO [Test] - -----------config------------
2009-11-23 13:41:20,695 INFO [Test] - url: jdbc:mysql://88.88.88.88:3306/xxxdatabase?useUnic
相关文档:
java(jsp)使用MySql数据库,中文乱码的完整解决方案
mysql是一个小型的开源的数据库,用来自学一些技术是十分方便的。但使用mysql存储数据,也会遇到一些非常恶心的问题,如:中文乱码问题、java驱动程序无法使用的问题(已经解决,详见:http://hi.baidu.com/lauo1988/blog/item/ff0da655bd3e2eceb745ae0b.html)。
......
<?php
/**
* 操作mysql
的基础类,其它与mysql有关的类都继承于此基类
*
* 此class中的$table都是已经包含表前缀的完整表名
*
* ver 20090717
* 使用范例
* $db = new DB('localhost','root','password','database','utf8');
* $db->debug = true;
* $db->primaryKeys = array (
* 'table_1 ......
一、
控制流程函数
a)
CASE WHEN THEN
函数
语法:
CASE value WHEN [compare-value]
THEN result [WHEN [compare-value] THEN result ……] [ELSE result ] END CASE WHEN
[condition] THEN result [WHEN[condition] THEN result …… ......
http://www.developer.com/java/data/article.php/3417381/Using-JDBC-with-MySQL-Getting-Started.htm#Preface
Preface
Purpose
The purpose of this lesson is to get you beyond the initial hurdles involved in:
Downloading and installing a MySQL database server.
Preparing that database for use with JDBC ......
很久没有用Mysql了,发现小小的时间问题也遇到不少麻烦,呵呵
所以总结一下:
第一种:
Date time= new java.sql.Date(new java.util.Date().getTime());
第二种:
java 用PreparedStatement来setDate,用问号的形式给日期问号赋值
pstmt.setTimestamp(8, new Timestamp(System.currentTimeMillis()));
pst ......