innodb共享表空间vs独立表空间_MySQL
bitsCN.com
innodb共享表空间vs独立表空间 在使用Innodb引擎时将要面对两种表空间的管理选择的问题,Innodb有两种管理表空间的方法: 1. 共享表空间(也可以拆分成多个小的表空间) 2. 独立表空间每一个表有一个独立的表空间。 我个人推荐使用独立表空间。在性能和运维上独立表空间比共享的表空间有很多优势。下面我将分别说明一下两种表空间管理的特点。 共享表空间: 优点: 可以放表空间分成多个文件存放到各个磁盘上(表空间文件大小不受表大小的限制,如一个表可以分布在不同步的文件上)。数据和文件放在一起方便管理。 缺点: 所有的数据和索引存放到一个文件中以为着将有一个很常大的文件,虽然可以把一个大文件分成多个小文件,但是多个表及索引在表空间中混合存储,这样对于一个表做了大量删除操作后表空间中将会有大量的空隙,特别是对于统计分析,日值系统这类应用最不适合用共享表空间。 我们知道共享表空间管理会出现表空间分配后不能回缩的问题,当出现临时建索引或是创建一个临时表的操作表空间扩大后,就是删除相关的表也没办法回缩那部分空间了。我们存在磁盘监控时,也许就报警不断了,但实际上MySQL还可以运行良好。另外,当磁盘上占用较多时性能也不是太好。 这种情况处理只能是是建一个新的Slave从主库上Dump出来,然后在Dump到从库中,动作较大。 对于InnoDB Hot Backup备份的操作(或是直接冷备),每次需要CP的文件比较大。如果现在有180G的表空间,但实际数据只有50多G,那么我们将面对每次需要拷180G的数据。 这种方式也许mysqldump是一个好的处理方式了。 独立表空间: 在配置文件(my.cnf)中设置: innodb_file_per_table 优点: 1. 每个表都有自已独立的表空间。 2. 每个表的数据和索引都会存在自已的表空间中。 3. 可以实现单表在不同的数据库中移动。 4. 空间可以回收(除drop table操作处,表空不能自已回收) a) Drop table操作自动回收表空间,如果对于统计分析或是日值表,删除大量数据后可以通过:alter table TableName engine=innodb;回缩不用的空间。 b) 对于使innodb-plugin的Innodb使用turncate table也会使空间收缩。 c) 对于使用独立表空间的表,不管怎么删除,表空间的碎片不会太严重的影响性能,而且还有机会处理。 缺点: 单表增加过大,如超过100个G。 对于单表增长过大的问题,如果使用共享表空间可以把文件分开,但有同样有一个问题,如果访问的范围过大同样会访问多个文件,一样会比较慢。对于独立表空间也有一个解决办法是:使用分区表,也可以把那个大的表空间移动到别的空间上然后做一个连接。其实从性能上出发,当一个表超过100个G有可能响应也是较慢了,对于独立表空间还容易发现问题早做处理。 备份: InnoDB Hot Backup(冷备)的表空间cp不会面对很多无用的copy了。而且利用innodb hot backup及表空间的管理命令可以实现单现移动。 监控: 可以更好从系统上监控数据的大小,每个表的大小。 另外推荐使用独立表空间的原因: 从性能上对比共享表空间和独立表空间: 共享表空间在Insert操作上少有优势。其它都没独立表空间表现好。这里也有一个TIPS当启用独立表空间时,请合理调整一下:innodb_open_files 。 从Linux系统处理上出发: 文件系统fsync一大片更新数据,对系统io冲击较大。若分隔成多个小数据fsync,能够减少对读的影响。 同时从mysql代码,发现mysql保证两次fsync之间至少有20ms的sleep,这样的话,若将一次fsync变成多次小数据操作,应该能够减少慢查询的比例。所以对于大量更新操作的系统不太适合用共享表空间。 来源 http://www.mysqlsupport.cn/
bitsCN.com

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

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

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

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

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

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

ホットトピック











この記事は WeChat 公開アカウント「情報時代に生きる」から転載したものであり、著者は情報時代に生きています。この記事を転載するには、情報時代の暮らしの公開アカウントまでご連絡ください。機械学習では、2 つのサンプル間の類似性とカテゴリ情報を評価するために、2 つのサンプル間の差異をどのように判断するかが基本的な概念です。この類似性を判断する尺度は、特徴空間内の 2 つのサンプル間の距離です。さまざまなデータ特性に基づいた多くの測定方法があります。一般的に言えば、2 つのデータ サンプル x、y に対して、関数 d(x, y) を定義します。これが 2 つのサンプル間の距離として定義される場合、d(x, y) は次の基本特性を満たす必要があります。負性: d(x, y)>=0 恒等式: d(x, y)=0 ⇔ x=y のペア

Linux システムでは、特にシステムのメモリが少ない場合に、スワップ スペースが重要な役割を果たします。これは、システムがスムーズに動作し、高負荷下でも安定性を維持できるようにするバックアップ メモリの保存スペースとして機能します。この記事では、システムのパフォーマンスが最適化され、さまざまなワークロードを処理できるようにするために、Ubuntu 22.04LTS にスワップ領域を追加するための詳細なガイドを提供します。スワップ スペースについて スワップ スペースは、システムの物理 RAM を補足するために使用される仮想メモリを提供します。システムの RAM が不足すると、カーネルはメモリ不足やシステムのクラッシュを防ぐためにデータをディスクにスワップします。 Linux システムは通常、この状況に対処するためにスワップ領域を使用します。メモリを大量に消費する複数のアプリケーションを同時に実行して、非常に大きなファイルやデータを処理します。

ドライブ c の残りのスペースは 50 ~ 80G がより適切です。システムは将来ジャンク ファイルやキャッシュ ファイルなどを生成するため、ソフトウェアをインストールするときにパスを選択することに慣れておらず、クリーンアップを行わない場合は、C ドライブに少なくとも 50 GB ~ 80 GB のスペースを確保することをお勧めします。コンピュータを頻繁に使用する場合は、少なくとも 100GB が必要です。

ご存知のとおり、システムのインストール完了後にシステム ディスクの占有量が大きすぎると、システムの遅れ、遅延、さらにはファイルの損失が発生する可能性があります。したがって、win11 システムをインストールする前に、win11 のアップグレードに必要な C ドライブの空き容量をエディタで確認してみましょう。 win11 のアップグレードに必要な C ドライブの空き容量: 回答: win11 のアップグレードには、20 ~ 30 GB の C ドライブの空き容量が必要です。 1. Microsoft の win11 構成要件によると、win11 のインストールには 64 GB のハード ドライブ容量が必要であることがわかります。 2. しかし、実際には、一般的には、それほど広いスペースは必要ありません。 3. すでに win11 をインストールしているユーザーからのフィードバックによると、win11 のアップグレードには約 20 ~ 30GB の C ドライブ容量が必要です。 4. しかし、もし私たちのドアにこれしかないとしたら、

Xbox 本体には、ダウンロードしてプレイできるゲームが豊富に揃っています。 Microsoft の Xbox Game Pass サブスクリプションと組み合わせると、ゲーム コレクションの楽しみが止まらなくなります。ただし、ゲームに使用できるスペースの問題があり、Xbox Series S では 356 GB、Xbox Series X では 850 GB です。以前のバージョンのゲームではこれで問題ありませんでしたが、ゲームの最大サイズはおそらく 20 ~ 45 GB の間であり、最近のゲームには当てはまりません。最近入手したゲームはディスク上の多くのスペースを占有し、他のゲームをダウンロードするためのスペースが少なくなります。 ForzaHorizon5 と Halo5Guardians など

iPhone 15 または iPhone 15 Pro Max をお持ちの場合、iOS 17.2 では空間ビデオを録画して、Apple の次期 Vision Pro ヘッドフォンの写真アプリで表示できるようになります。その方法は次のとおりです。 AppleのVisionProヘッドフォンは2024年2月頃に発売される予定だ。それまでは、これに備える 1 つの方法は、iPhone を使用して空間ビデオと呼ばれる特別な形式でビデオを録画し、Apple のヘッドフォンで視聴できるようにすることです。空間ビデオは iPhone で表示すると通常のビデオのように見えますが、VisionPro では 3 次元に近い感覚が得られます。

1. はじめに 現在のコンピュータ ネットワークの爆発的な成長により、それに伴う問題はネットワーク攻撃の数が急増していることです。政府機関から社会のさまざまな重要インフラに至るまで、私たちの社会のさまざまな部門は、コンピューター ネットワークと情報技術に大きく依存しています。どうやらサイバー攻撃に対しても脆弱であるようです。一般的なネットワーク攻撃では、ターゲット コンピューターが無効になったり、サービスがオフラインになったり、ターゲット コンピューターのデータにアクセスされたりします。 1990 年代以降、サイバー攻撃の数と影響は大幅に増加しました。ネットワーク セキュリティとは、ネットワーク デバイスのアクティビティを保護するために使用される一連のテクノロジーと、考えられるすべての脅威からネットワーク デバイスを保護するための手段を指します。従来のネットワークセキュリティ技術では、そのほとんどが静的なアクセス管理であり、セキュリティ制御システムは事前に設定された定義に基づいて保護します。

クラウド ストレージは私たちの日常生活や仕事に欠かせないものになっています。ファイル数が増加し続けるにつれて、クラウド ストレージ スペースに対する需要がますます顕著になっています。中国の大手クラウド ストレージ サービス プロバイダーとして、Baidu Cloud は強力なストレージ機能と便利な操作体験でユーザーの支持を得ています。しかし、多くのユーザーは使用中に容量不足の問題に遭遇するかもしれないので、このチュートリアルでは容量を拡張するための詳細な解決策を提供します。 1. Baidu Cloud のアカウントにログインします。 (BaiduアカウントまたはQQアカウントでログインできます) 2.ログイン後、Baidu Cloudの左側にある「2048G容量を無料で受け取る」をクリックします。 3. Baidu Cloud モバイル クライアントをダウンロードします。Android スマートフォン用にクリックしてダウンロードします。
