连接mySQL数据库失败频繁,主要是什么原因造成的? 一年前,我开发了一个网站,租用的是linux下PHP+mySQL的虚拟空间,之前一直工作正常。

近半年来,却频繁出现连接数据库失败错误(一周1~2次),需要找空间商重启mysql服务才行:

Warning: mysql_connect(): Can 't connect to MySQL server on 'xx.xx.xx.xx ' (4) in /www/users/1b2g.com/xxxx.php on line xxxx

找空间商投诉,空间商说是我自己的问题,说同主机的其他网站没有类似问题。

在网上搜索,似乎有些网友说,操作数据库不能用mysql_connect()和mysql_close()开关。照文中指示,将mysql_connect()改成了mysql_pconnect(),似乎正常了半个月时间。但是这半个月恰好因为百度调整,我的网站流量下降了。这2天,流量恢复,问题再度出现,而且不再是1周1~2,是天天出现:

Warning: mysql_pconnect(): Can 't connect to MySQL server on 'xx.xx.xx.xx ' (4) in /www/users/1b2g.com/xxxx.php on line xxxx

特别是今天,重启了也没用,又坏了,又联系不到客服,急死了。

请大家帮忙找找,到底是啥原因?是否和流量大小相关?应该怎么解决,谢谢!

回答:对于这个疑问,当时有人提出建议:优化一下程序,每页不要有过多的查询. 特别是循环体里面,尽量不要再有查询,否则很容易堵塞。应该考虑使用连接池

但是提问者又出现了问题:我已经尽可能减少每个页面的数据库连接数了。

曾经最开始的时候有个页面的连接数是比较多(因为开始为了代码复用,用了iframe嵌套),后来经优化最多的1个页面已经减到4个;其他一般1~2个。

昨天我已经把所有页面的连接数都降到2个以下,用户访问最多的页面(占访问总量的80%)只有1个连接。

但是今天中午问题又出现了。

从现象来看, 'xx.xx.xx.xx '应该你是用了域名或者IP作为host名,这样一旦DNS或者网关出问题,就会连不上本机端口,建议你使用localhost作为host名。localhost还会在不支持socket的时候自动使用管道连接本机,不会出现连接问题。

应用连接mysql数据库失败_连接MySQL数据库失败频繁的原因相关推荐

  1. MySQL学习笔记_关于MySQL的字符类型VARCHAR长度知识总结

    MySQL学习笔记_关于MySQL的字符类型VARCHAR长度知识总结 一.VARCHAR存储和行长度限制 1.VARCHAR(N)中,N指的是字符的长度,VARCHAR类型最大支持65535,指的是 ...

  2. 局域网访问mysql失败_连接局域网sql数据库服务器失败

    SQL数据库学习之路(八) 数据库介绍: 在网页上的主程序中进行注册操作,然后把数据发送给人,人传递这些数据到数据库当中. 为什么学ADO.NET:之前我们所学的只能在查询分析器中查看数据,操作数据. ...

  3. laravel mysql超时时间_连接到数据库时Laravel连接超时

    我将应用程序从我的开发机器移动到测试服务器.连接到我的本地开发mysql数据库时,一切都按预期工作.尝试连接到我们的测试服务器时,请求超时45秒后返回500错误.连接到数据库时Laravel连接超时 ...

  4. mysql创建模型_连接mysql数据库,创建用户模型

    安装与配置python3.6+flask+mysql数据库下载安装MySQL数据库 下载安装MySQL-python 中间件 pip install flask-sqlalchemy (Python的 ...

  5. mysql远程连接oracle数据库服务器配置_远程访问oracle数据库

    Remote access to the oracle database 首先我们在linux下安装的Oracle软件,并创建了数据库,配置了监听 服务器端: 需要开启监听(lsnrctl start ...

  6. mysql断开数据库连接_快速断开当前数据库的所有连接的方法

    快速断开当前数据库的所有连接的方法 以前我喜欢执行这个脚本,然后当要断开所有连接的时候就执行一下这个脚本,但是当我重装SQLSERVER的时候,又要在代码库里 找到这个脚本执行觉得很不方便,实际上分离 ...

  7. mysql 允许远程_配置mysql允许远程连接的方法

    默认情况下,mysql只允许本地登录,如果要开启远程连接,则需要修改/etc/mysql/my.conf文件. 一.修改/etc/mysql/my.conf 找到bind-address = 127. ...

  8. mysql amp;amp;_浅析mysql交互式连接amp;非交互式连接

    交互式操作:通俗的说,就是你在你的本机上打开mysql的客户端,就是那个黑窗口,在黑窗口下进行各种sql操作,当然走的肯定是tcp协议. 非交互式操作:就是你在你的项目中进行程序调用.比如一边是tom ...

  9. mysql服务remove失败_《MySQL数据库》MySql简介、下载与安装

    一.MySQL的简介 MySQL,是一个关系型数据库管理系统,它是由瑞典MySQL AB公司开发的产品,之后被Sun公司收购:在2009年4月20日,Sun公司被Oracle公司收购:从此MySQl属 ...

  10. mysql主从数据库含义_(转)Mysql数据库主从心得整理

    管理mysql主从有2年多了,管理过200多组mysql主从,几乎涉及到各个版本的主从,本博文属于总结性的,有一部分是摘自网络,大部分是根据自己管理的心得和经验所写,整理了一下,分享给各位同行,希望对 ...

最新文章

  1. 枚举中关于toRaw()和fromRaw(3)编译出错
  2. DeepMind难以盈利,人工智能该走向何处去?
  3. 【持续更新】C++中string类使用总结
  4. RabbitMQ 官方NET教程(二)【工作队列】
  5. AOP原理-创建AOP代理--AnnotationAwareAspectJAutoProxyCreator【InstantiationAwareBeanPostProcessor】的作用
  6. (NO.00005)iOS实现炸弹人游戏(十一):怪物之火精灵
  7. 关于排序速度效率数组集合选择那点事
  8. 【转载】2009年春晚节目单提前揭晓
  9. mysqlreport查看mysql性能
  10. Ajax请求利用jsonp实现跨域
  11. c语言中row和col的意思,这段c代码的含义时什么,怎么理解?
  12. 使用Playwright对ASP.NET Core应用执行功能测试
  13. 历日 [宋] 许月卿
  14. linux 上传下载工具有哪些,Linux上传下载工具
  15. mysql做一个邮箱_php+mysql 做一个注册页面 注册成功后给用户邮箱发一份确认邮件,发送邮件的代码怎么加到下面的代码里了...
  16. 面试产品经理 应该如何介绍自己的优势和劣势?
  17. Unbuntu16.04下cmake-gui安装
  18. 【做小游戏在Godot中遇到的问题第一篇】
  19. 我的三维mandelbulb制作fractal成长之路[续]
  20. 用bootstrap创建表格

热门文章

  1. 云梦四时歌亲密度脚本提升 亲密度奖励辅助工具策略
  2. NVIDIA 显卡计算能力
  3. hp400 硒鼓加粉图解
  4. python自带IDLE(python gui)强大的调试功能
  5. 在工作中,如何对付一个猪一样的队友?
  6. 7系列FPGA上电配置流程
  7. python爬取网文存入txt文件
  8. Spring Aop 初级- 概念及作用
  9. Android开机各个阶段(Android R)
  10. USB接口 | Modbus智能LED三色声光报警器 警示灯带蜂鸣器