- 论坛徽章:
- 0
|
测试机器和服务器都是 rhel3 au4
mysql : 4.1.18 编译安装
php4.44 编译安装
在测试机器上我的程序一直都好好的
但是在服务器上出现
on file /***/***/classes.php
on line 52
eno:1040
emsg:Too many connections
我的/etc/my.cnf
26 [mysqld]
27 port = 3306
28 socket = /tmp/mysql.sock
29 skip-locking
30 key_buffer = 16M
31 max_allowed_packet = 50M
32 table_cache = 64
33 sort_buffer_size = 512K
34 net_buffer_length = 8K
35 read_buffer_size = 256K
36 read_rnd_buffer_size = 512K
37 myisam_sort_buffer_size = 8M
38 max_connections = 1000
我的classes.php 中相关成员函数
<?
/*--------------------------------------------------
| 数据驱动类
*--------------------------------------------------*/
class db_driver
{
var $options = array(
"db_dbname" => "", //数据库名
"db_username" => "****", //数据库用户名
"db_passwd" => "******", //数据库密码
"db_host" => "*******:3306", //服务器
"persistent" => 1, //持久化连接
"debug" => 1, //调试标志
);
var $conn; //数据库连接
var $stmt; //数据库语句声明标志
var $eno; //错误编号
var $emsg; //错误信息
/*
function db_driver(&$options)
{
$this->__construct($options);
}
*/
function db_driver(&$options)
{
if(is_array($options))
{
$this->set_options($options);
$this->connect();
$this->select_db();
}
}
function set_options(&$options)
{
if(is_array($options))
foreach($options as $key => $var){
$this->options[$key] = $var;
$options[$key] = $key;
}
}
function connect()
{
if($this->options["db_dbname"]){
if($this->options["persistent"]){
$this->conn = @mysql_pconnect($this->options['db_host'],$this->options["db_username"], $this->options["db_passwd"]);
}else{
$this->conn = mysql_connect($this->option['db_host'],$this->options["db_username"], $this->options["db_passwd"]);
}
}
//print_r($this->conn);
//die();
if(!$this->conn) $this->set_error(__LINE__);
return $this->conn;
}
现在我不知道是程序还是服务器配置的问题
在测试机器上没有出现以上错误,初步估计是mysql 的问题吧,大虾们看一下,非常感谢!! |
|