mysql 1040错误Too many connections_MySQL
你的服务器是不是出现这样的警告?
信息如下:
从官方文档知道linux上面编译安装的mysql默认的连接为100个,这样对于网站的需求来说是远远不够的。
mysql官方告诉我们需要修改max_connections的值,那么我们怎么去修改呢?有两种方法
1、修改配置文件文件
修改/etc/my.cnf这个文件,在[mysqld]中新增max_connections=N,如果你没有这个文件请从编译源码中的support-files文件夹中复制你所需要的*.cnf文件为到/etc/my.cnf。我使用的是my-medium.cnf,中型服务器配置。例如我的[mysqld]的内容如下
[mysqld]
port = 3306
socket = /tmp/mysql.sock
skip-locking
key_buffer = 160M
max_allowed_packet = 1M
table_cache = 64
sort_buffer_size = 512K
net_buffer_length = 8K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
myisam_sort_buffer_size = 8M
max_connections=1000
由于对mysql还不是很熟悉,所以很多参数没有修改。哈哈。。
2、非使用mysqld脚本自动启动的用户。
修改$MYSQL_HOME/bin/mysqld_safe文件
例如:/usr/local/mysql/bin/mysqld_safe这个文件
grep -n 'max_connection' $MYSQL_HOME/bin/mysqld_safe
修改对应行号的max_connections参数值
以上方法为参考网上的做法写的。
方法二:
在PHP手册里面找关于mysql_connect和mysql_pconnect的资料,下面是在php手册中对这两个函数的描述:
mysql_connect 函数原型:
resource mysql_connect ( [string server [, string username [, string password [, bool new_link [, int client_flags]]]]])
返回:
如果成功则返回一个MySQL 连接标识,失败则返回FALSE。
描述:
mysql_connect() 建立一个到MySQL 服务器的连接。当没有提供可选参数时使用以下默认值:server = 'localhost:3306',username =
服务器进程所有者的用户名,password = 空密码。
如果用同样的参数第二次调用mysql_connect(),将不会建立新连接,而将返回已经打开的连接标识。参数new_link 改变此行为并使
mysql_connect() 总是打开新的连接,甚至当mysql_connect() 曾在前面被用同样的参数调用过。参数client_flags 可以是以下常量的组合
:MYSQL_CLIENT_COMPRESS,MYSQL_CLIENT_IGNORE_SPACE 或者MYSQL_CLIENT_INTERACTIVE。
注: new_link 参数自PHP 4.2.0 起可用。
client_flags 参数自PHP 4.3.0 起可用。
一旦脚本结束,到服务器的连接就会被关闭。除非之前已经调用了mysql_close() 来关闭它。
mysql_pconnect :
函数原型:
resource mysql_pconnect ( [string server [, string username [, string password [, int client_flags]]]])
返回:
如果成功则返回一个正的MySQL 持久连接标识符,出错则返回FALSE。
描述:
mysql_pconnect() 建立一个到MySQL 服务器的连接。如果没有提供可选参数,则使用如下默认值:server = 'localhost:3306',
username = 服务器进程所有者的用户名,password = 空密码。client_flags 参数可以是以下常量的组合:MYSQL_CLIENT_COMPRESS,
MYSQL_CLIENT_IGNORE_SPACE 或者MYSQL_CLIENT_INTERACTIVE。
server 参数也可以包括端口号,例如"hostname:port",或者是本机套接字的的路径,例如":/path/to/socket"。
注: 对":port" 的支持是3.0B4 版添加的。
对":/path/to/socket" 的支持是3.0.10 版添加的。 两者之间的区别 :
mysql_pconnect() 和mysql_connect() 非常相似,但有两个主要区别。
首先,当连接的时候本函数将先尝试寻找一个在同一个主机上用同样的用户名和密码已经打开的(持久)连接,如果找到,则返回此连接标识而不打开新连接。
其次,当脚本执行完毕后到SQL 服务器的连接不会被关闭,此连接将保持打开以备以后使用(mysql_close() 不会关闭由mysql_pconnect() 建立的连接)。
可选参数client_flags 自PHP 4.3.0 版起可用。此种连接称为"持久的"。
小结一下,要保证你的系统不会出现Too many connections 错误,需要注意两点:
1.保证你的apache的最大进程数不超过mysql的最大连接数;
2.不要在程序里面用过多mysql_pconnect连接到同一个数据库服务器(一个就够了).这需要好的编码习惯和规范.特别是不断的给系统增加
新的功能,如果不注重系统架构和编码规范,当系统的复杂度到了一定的程度,整个系统就变得无法维护了.出现问题的时候解决起来就很麻烦了.
解决方法是修改/etc/mysql/my.cnf,添加以下一行:
set-variable = max_connections=500
或在启动命令中加上参数max_connections=500
就是修改最大连接数,然后重启mysql.默认的连接数是100,太少了,所以容易出现如题错误

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

Video Face Swap
完全無料の AI 顔交換ツールを使用して、あらゆるビデオの顔を簡単に交換できます。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック











プリンターの使用中に、操作を完了できませんでした (エラー 0x00000771) などのエラー メッセージが表示された場合は、プリンターが切断されている可能性があります。この場合、以下の方法で問題を解決できます。この記事では、Windows 11/10 PC でこの問題を解決する方法について説明します。エラー メッセージ全体には、「操作を完了できませんでした (エラー 0x0000771)」が示されています。指定されたプリンターは削除されました。 Windows PC で 0x00000771 プリンター エラーを修正する プリンター エラーを修正するには、操作を完了できませんでした (エラー 0x0000771)。指定されたプリンターは Windows 11/10 PC で削除されています。次の解決策に従ってください: 印刷スプールを再起動します

1. まずDingTalkを開きます。 2. グループ チャットを開き、右上隅にある 3 つの点をクリックします。 3. このグループで私のニックネームを見つけます。 4. クリックして入力し、変更して保存します。

目次 解決策 1 解決策 21. Windows Update の一時ファイルを削除します。 2. 破損したシステム ファイルを修復します。 3. レジストリ エントリを表示および変更します。 4. ネットワーク カード IPv6 をオフにします。 5. WindowsUpdateTroubleshooter ツールを実行して修復します。 6. ファイアウォールをオフにします。およびその他の関連するウイルス対策ソフトウェア。 7. WidowsUpdate サービスを閉じます。解決策 3 解決策 4 Huawei コンピュータの Windows アップデート中に「0x8024401c」エラーが発生する 症状 問題 原因 解決策 まだ解決されませんか?最近、システムの脆弱性のため、Web サーバーを更新する必要があります。サーバーにログインすると、エラー コード 0x8024401c が表示されます。

DHCP リレーの役割は、2 つのサーバーが異なるサブネット上にある場合でも、受信した DHCP パケットをネットワーク上の別の DHCP サーバーに転送することです。 DHCP リレーを使用すると、ネットワーク センターに集中 DHCP サーバーを展開し、それを使用してすべてのネットワーク サブネット/VLAN に IP アドレスを動的に割り当てることができます。 Dnsmasq は、一般的に使用される DNS および DHCP プロトコル サーバーであり、ネットワーク内の動的ホスト構成の管理を支援する DHCP リレー サーバーとして構成できます。この記事では、dnsmasq を DHCP リレー サーバーとして構成する方法を説明します。コンテンツ トピック: ネットワーク トポロジ DHCP リレー上の静的 IP アドレスの構成 集中型 DHCP サーバー上の DHCP リレー D

表示エラーは、Xiangxiang Fuzhai アプリで発生する可能性のある問題です。一部のユーザーは、Xiangxiang Fuzhai アプリでエラーが表示される理由がわからない場合があります。ネットワーク接続の問題、バックグラウンド プログラムの多さ、誤った登録情報などが原因である可能性があります。ユーザー向けにアプリ表示エラーの解決方法を編集部が紹介しますので、興味のある方はぜひご覧ください! Xiangxiang Fuzhai アプリでエラーの回答が表示されるのはなぜですか: ネットワーク接続の問題、バックグラウンド プログラムが多すぎる、間違った登録情報など。 詳細: 1. [ネットワークの問題] 解決策: デバイスの接続ネットワーク ステータスを確認し、再接続するか、別のネットワーク接続を選択してください。使用できます。 2. [バックグラウンド プログラムが多すぎる] 解決策: 実行中の他のプログラムを閉じてシステムを解放すると、ソフトウェアの実行速度が向上します。 3. 【登録情報に誤りがある場合】

LinuxOops: このエラーの意味の詳細な説明、特定のコード例が必要 LinuxOops とは何ですか? Linux システムでは、「おっと」とは、カーネル内の重大なエラーによりシステムがクラッシュする状況を指します。 Oops は実際には、致命的なエラーが発生したときにシステムを停止し、開発者が問題を診断して修正できるように関連するエラー情報を出力するカーネル クラッシュ メカニズムです。通常、エラーはカーネル空間で発生し、ユーザー空間のアプリケーションとは何の関係もありません。カーネルが遭遇したとき

Douyin Blue V 認証は、Douyin プラットフォーム上の企業またはブランドの公式認証であり、ブランド イメージと信頼性の向上に役立ちます。企業の発展戦略の調整やブランドイメージの更新に伴い、企業はDouyin Blue V認証の名称を変更したい場合があります。では、Douyin Blue V は名前を変更できるのでしょうか?答えは「はい」です。この記事では、エンタープライズ Douyin Blue V アカウントの名前を変更する手順を詳しく紹介します。 1.Douyin Blue V の名前は変更できますか? Douyin Blue V アカウントの名前は変更できます。 Douyin の公式規定によると、企業の Blue V 認定アカウントは、一定の条件を満たした後にアカウント名の変更を申請できます。一般的に、企業は社名変更の合法性と必要性を証明するために、営業許可証、組織コード証明書などの関連資料を提供する必要があります。 2. 企業のDouyin Blue Vアカウントの名前を変更する手順は何ですか?

1. イヤホンをイヤホンボックスに入れて蓋を開けたままにし、ボックスのボタンを長押ししてイヤホンのペアリング状態にします。 2. 時計の音楽機能をオンにして Bluetooth ヘッドフォンを選択するか、時計の設定機能で Bluetooth ヘッドフォンを選択します。 3. 正常にペアリングするウォッチのヘッドセットを選択します。
