Maison base de données tutoriel mysql 连接MySQL数据库失败的原因

连接MySQL数据库失败的原因

Jun 07, 2016 pm 03:15 PM
linux mysql 原因 数据库 进入 连接

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入 连接mySQL数据库失败频繁,主要是什么原因造成的? 一年前,我开发了一个网站,租用的是linux下PHP+mySQL的虚拟空间,之前一直工作正常。 近半年来,却频繁出现连接数据库失败错误(一周1~2次),需

欢迎进入Linux社区论坛,与200万技术人员互动交流 >>进入

  连接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数据库失败的原因

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment créer Navicat Premium Comment créer Navicat Premium Apr 09, 2025 am 07:09 AM

Créez une base de données à l'aide de NAVICAT Premium: Connectez-vous au serveur de base de données et entrez les paramètres de connexion. Cliquez avec le bouton droit sur le serveur et sélectionnez Créer une base de données. Entrez le nom de la nouvelle base de données et le jeu de caractères spécifié et la collation. Connectez-vous à la nouvelle base de données et créez le tableau dans le navigateur d'objet. Cliquez avec le bouton droit sur le tableau et sélectionnez Insérer des données pour insérer les données.

Comment créer une nouvelle connexion à MySQL dans Navicat Comment créer une nouvelle connexion à MySQL dans Navicat Apr 09, 2025 am 07:21 AM

Vous pouvez créer une nouvelle connexion MySQL dans NAVICAT en suivant les étapes: ouvrez l'application et sélectionnez une nouvelle connexion (CTRL N). Sélectionnez "MySQL" comme type de connexion. Entrez l'adresse Hostname / IP, le port, le nom d'utilisateur et le mot de passe. (Facultatif) Configurer les options avancées. Enregistrez la connexion et entrez le nom de la connexion.

Comment se connecter à MySQL local à Navicat Comment se connecter à MySQL local à Navicat Apr 09, 2025 am 07:45 AM

Pour se connecter à une base de données MySQL locale à l'aide de NAVICAT: créez une connexion et définissez le nom de connexion, l'hôte, le port, le nom d'utilisateur et le mot de passe. Testez la connexion pour vous assurer que les paramètres sont corrects. Enregistrez la connexion. Sélectionnez une nouvelle connexion dans la liste de connexions. Double-cliquez sur la base de données à laquelle vous souhaitez vous connecter.

Comment se connecter aux bases de données Comment se connecter aux bases de données Apr 09, 2025 am 06:45 AM

Pour vous connecter à une base de données à l'aide de NAVICAT, effectuez les étapes suivantes en séquence: créez une connexion dans Navicat. Entrez le nom d'hôte, le port, le nom d'utilisateur, le mot de passe et le nom de la base de données. Ajustez les paramètres avancés (facultatif). Enregistrez la connexion. Tester la connexion. Connectez-vous à la base de données. Affichez l'objet de base de données.

Comment ajouter des colonnes dans des outils graphiques SQL? Comment ajouter des colonnes dans des outils graphiques SQL? Apr 09, 2025 pm 12:54 PM

Ajouter des colonnes dans l'outil graphique SQL: sélectionnez le tableau dans les colonnes que vous souhaitez ajouter. Cliquez avec le bouton droit et sélectionnez "Alter Table" ou des options similaires. Définit les propriétés de la nouvelle colonne (nom, type de données, longueur ou s'il est vide). Spécifie la valeur par défaut de la nouvelle colonne, le cas échéant. Sélectionnez le type de données approprié pour éviter les erreurs de données. Utilisez des noms de colonne significatifs. Considérez l'impact des performances lors de l'exécution d'opérations d'addition de colonnes sur de grandes tables. Sauvegardez toujours la base de données avant l'opération pour éviter la perte de données.

Quelle est la différence entre la syntaxe pour ajouter des colonnes dans différents systèmes de base de données Quelle est la différence entre la syntaxe pour ajouter des colonnes dans différents systèmes de base de données Apr 09, 2025 pm 02:15 PM

不同数据库系统添加列的语法为 : MySQL: alter table table_name Ajouter Column_name data_type; postgresql: alter table table_name Add Column Column_name data_type; Oracle: alter table table_name add (chronn_name data_type); sql server: alter alter table_name Add Column_name data__

Comment copier la base de données dans Navicat Comment copier la base de données dans Navicat Apr 09, 2025 am 06:54 AM

NAVICAT fournit deux façons de reproduire une base de données: utilisez l'assistant de base de données réplique: sélectionnez le serveur cible, entrez le nom de la base de données et spécifiez les options de réplication. Copie manuelle: exportez la base de données, puis importez les fichiers exportés sur le serveur cible.

Comment récupérer les données après que SQL supprime les lignes Comment récupérer les données après que SQL supprime les lignes Apr 09, 2025 pm 12:21 PM

La récupération des lignes supprimées directement de la base de données est généralement impossible à moins qu'il n'y ait un mécanisme de sauvegarde ou de retour en arrière. Point clé: Rollback de la transaction: Exécutez Rollback avant que la transaction ne s'engage à récupérer les données. Sauvegarde: la sauvegarde régulière de la base de données peut être utilisée pour restaurer rapidement les données. Instantané de la base de données: vous pouvez créer une copie en lecture seule de la base de données et restaurer les données après la suppression des données accidentellement. Utilisez la déclaration de suppression avec prudence: vérifiez soigneusement les conditions pour éviter la suppression accidentelle de données. Utilisez la clause WHERE: Spécifiez explicitement les données à supprimer. Utilisez l'environnement de test: testez avant d'effectuer une opération de suppression.

See all articles