Maison base de données tutoriel mysql Monty说MySQL的优化(一)_MySQL

Monty说MySQL的优化(一)_MySQL

Jun 01, 2016 pm 02:01 PM
优化 应用程序 数据库表 硬件 doux

 一、我们可以且应该优化什么?

  硬件

  操作系统/软件库

  SQL服务器(设置和查询)

  应用编程接口(API)

  应用程序

  二、优化硬件

  如果你需要庞大的数据库表(>2G),你应该考虑使用64位的硬件结构,像Alpha、Sparc或即将推出的IA64。因为MySQL内部使用大量64位的整数,64位的CPU将提供更好的性能。

  对大数据库,优化的次序一般是RAM、快速硬盘、CPU能力。

  更多的内存通过将最常用的键码页面存放在内存中可以加速键码的更新。

  如果不使用事务安全(transaction-safe)的表或有大表并且想避免长文件检查,一台UPS就能够在电源故障时让系统安全关闭。

  对于数据库存放在一个专用服务器的系统,应该考虑1G的以太网。延迟与吞吐量同样重要。

  三、优化磁盘

  为系统、程序和临时文件配备一个专用磁盘,如果确是进行很多修改工作,将更新日志和事务日志放在专用磁盘上。

  低寻道时间对数据库磁盘非常重要。对与大表,你可以估计你将需要log(行数)/log(索引块长度/3*2/(键码长度 + 数据指针长度))+1次寻到才能找到一行。对于有500000行的表,索引Mediun int类型的列,需要log(500000) / log(1024/3*2/(3 + 2))+1=4次寻道。上述索引需要500000*7*3/2=5.2M的空间。实际上,大多数块将被缓存,所以大概只需要1-2次寻道。

  然而对于写入(如上),你将需要4次寻道请求来找到在哪里存放新键码,而且一般要2次寻道来更新索引并写入一行。

  对于非常大的数据库,你的应用将受到磁盘寻道速度的限制,随着数据量的增加呈N log N数据级递增。

  将数据库和表分在不同的磁盘上。在MySQL中,你可以为此而使用符号链接。

  条列磁盘(RAID 0)将提高读和写的吞吐量。

  带镜像的条列(RAID 0+1)将更安全并提高读取的吞吐量。写入的吞吐量将有所降低。

  不要对临时文件或可以很容易地重建的数据所在的磁盘使用镜像或RAID(除了RAID 0)。

  在Linux上,在引导时对磁盘使用命令hdparm -m16 -d1以启用同时读写多个扇区和DMA功能。这可以将响应时间提高5~50%。

  在Linux上,用async (默认)和noatime挂载磁盘(mount)。

  对于某些特定应用,可以对某些特定表使用内存磁盘,但通常不需要。

  四、优化操作系统

  不要交换区。如果内存不足,增加更多的内存或配置你的系统使用较少内存。

  不要使用NFS磁盘(会有NFS锁定的问题)。

  增加系统和MySQL服务器的打开文件数量。(在safe_mysqld脚本中加入ulimit -n #)。

  增加系统的进程和线程数量。

  如果你有相对较少的大表,告诉文件系统不要将文件打碎在不同的磁道上(Solaris)。

  使用支持大文件的文件系统(Solaris)。

  选择使用哪种文件系统。在Linux上的Reiserfs对于打开、读写都非常快。文件检查只需几秒种。

  五、选择应用编程接口

  PERL

  可在不同的操作系统和数据库之间移植。

  适宜快速原型。

  应该使用DBI/DBD接口。

  PHP

  比PERL易学。

  使用比PERL少的资源。

  通过升级到PHP4可以获得更快的速度。

  C

  MySQL的原生接口。

  较快并赋予更多的控制。

  低层,所以必须付出更多。

  C++

  较高层次,给你更多的时间来编写应用。

  仍在开发中

  ODBC

  运行在Windows和Unix上。

  几乎可在不同的SQL服务器间移植。

  较慢。MyODBC只是简单的直通驱动程序,比用原生接口慢19%。

  有很多方法做同样的事。很难像很多ODBC驱动程序那样运行,在不同的领域还有不同的错误。

  问题成堆。Microsoft偶尔还会改变接口。

  不明朗的未来。(Microsoft更推崇OLE而非ODBC)

  ODBC

  运行在Windows和Unix上。

  几乎可在不同的SQL服务器间移植。

  较慢。MyODBC只是简单的直通驱动程序,比用原生接口慢19%。

  有很多方法做同样的事。很难像很多ODBC驱动程序那样运行,在不同的领域还有不同的错误。

  问题成堆。Microsoft偶尔还会改变接口。

  不明朗的未来。(Microsoft更推崇OLE而非ODBC)

  JDBC

  理论上可在不同的操作系统何时据库间移植。

  可以运行在web客户端。

  Python和其他

  可能不错,可我们不用它们

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

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

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 connecter Apple Vision Pro au PC Comment connecter Apple Vision Pro au PC Apr 08, 2024 pm 09:01 PM

Le casque Apple Vision Pro n'est pas nativement compatible avec les ordinateurs, vous devez donc le configurer pour vous connecter à un ordinateur Windows. Depuis son lancement, Apple Vision Pro a été un succès, et avec ses fonctionnalités de pointe et son opérabilité étendue, il est facile de comprendre pourquoi. Bien que vous puissiez y apporter quelques ajustements pour l'adapter à votre PC et que ses fonctionnalités dépendent fortement d'AppleOS, ses fonctionnalités seront donc limitées. Comment connecter AppleVisionPro à mon ordinateur ? 1. Vérifiez la configuration système requise Vous avez besoin de la dernière version de Windows 11 (les PC personnalisés et les appareils Surface ne sont pas pris en charge) Prise en charge d'un processeur rapide 64 bits 2 GHz ou plus rapide GPU hautes performances, la plupart

MS Paint ne fonctionne pas correctement sous Windows 11 MS Paint ne fonctionne pas correctement sous Windows 11 Mar 09, 2024 am 09:52 AM

Microsoft Paint ne fonctionne pas sous Windows 11/10 ? Eh bien, cela semble être un problème courant et nous avons d'excellentes solutions pour le résoudre. Les utilisateurs se plaignent du fait que lorsqu'ils essaient d'utiliser MSPaint, celui-ci ne fonctionne pas et ne s'ouvre pas. Les barres de défilement de l'application ne fonctionnent pas, les icônes de collage ne s'affichent pas, plantent, etc. Heureusement, nous avons rassemblé certaines des méthodes de dépannage les plus efficaces pour vous aider à résoudre les problèmes liés à l'application Microsoft Paint. Pourquoi Microsoft Paint ne fonctionne-t-il pas ? Certaines raisons possibles pour lesquelles MSPaint ne fonctionne pas sur un PC Windows 11/10 sont les suivantes : L'identifiant de sécurité est corrompu. système suspendu

L'application Shazam ne fonctionne pas sur iPhone : correctif L'application Shazam ne fonctionne pas sur iPhone : correctif Jun 08, 2024 pm 12:36 PM

Vous rencontrez des problèmes avec l’application Shazam sur iPhone ? Shazam vous aide à trouver des chansons en les écoutant. Cependant, si Shazam ne fonctionne pas correctement ou ne reconnaît pas la chanson, vous devrez la dépanner manuellement. La réparation de l'application Shazam ne prendra pas longtemps. Alors, sans perdre plus de temps, suivez les étapes ci-dessous pour résoudre les problèmes avec l'application Shazam. Correctif 1 – Désactiver la fonctionnalité de texte en gras Le texte en gras sur iPhone peut être la raison pour laquelle Shazam ne fonctionne pas correctement. Étape 1 – Vous ne pouvez le faire qu’à partir des paramètres de votre iPhone. Alors, ouvrez-le. Étape 2 – Ensuite, ouvrez les paramètres « Affichage et luminosité ». Étape 3 – Si vous constatez que « Texte en gras » est activé

Déplacez les photos des anciennes photos vers la nouvelle application Photos dans Windows 11 Déplacez les photos des anciennes photos vers la nouvelle application Photos dans Windows 11 Mar 10, 2024 am 09:37 AM

Cet article vous expliquera comment migrer des photos de Photos Legacy vers la nouvelle application Photos dans Windows 11. Microsoft a introduit une application Photos remaniée dans Windows 11, offrant aux utilisateurs une expérience plus simple et plus riche en fonctionnalités. La nouvelle application Photos trie les photos différemment de l'ancienne application PhotosLegacy. Il organise les photos dans des dossiers comme les autres fichiers Windows au lieu de créer des albums. Cependant, les utilisateurs utilisant toujours l'application Photos Legacy peuvent facilement migrer leurs photos vers la nouvelle version de Microsoft Photos. Qu'est-ce que la photo

Mar 22, 2024 pm 04:40 PM

Durant leurs études au lycée, certains élèves prennent des notes très claires et précises, prenant plus de notes que d’autres dans la même classe. Pour certains, prendre des notes est un passe-temps, tandis que pour d’autres, c’est une nécessité lorsqu’ils oublient facilement de petites informations sur quelque chose d’important. L'application NTFS de Microsoft est particulièrement utile pour les étudiants qui souhaitent sauvegarder des notes importantes au-delà des cours réguliers. Dans cet article, nous décrirons l'installation des applications Ubuntu sur Ubuntu24. Mise à jour du système Ubuntu Avant d'installer le programme d'installation d'Ubuntu, sur Ubuntu24, nous devons nous assurer que le système nouvellement configuré a été mis à jour. Nous pouvons utiliser le "a" le plus célèbre du système Ubuntu

Que faire si une exception logicielle inconnue se produit dans une application informatique Que faire si une exception logicielle inconnue se produit dans une application informatique Mar 13, 2024 am 10:08 AM

Solution : 1. Redémarrez l'ordinateur ; 2. Mettez à jour la version du logiciel ; 3. Désinstallez et réinstallez le programme ; 4. Vérifiez l'intégrité des fichiers système. 5. Vérifiez l'ordinateur pour détecter toute infection par un virus ou un logiciel malveillant ; fichiers indésirables ; 7. Désactivez ou désinstallez les autres programmes susceptibles de provoquer des conflits.

Optimisation des programmes C++ : techniques de réduction de la complexité temporelle Optimisation des programmes C++ : techniques de réduction de la complexité temporelle Jun 01, 2024 am 11:19 AM

La complexité temporelle mesure le temps d'exécution d'un algorithme par rapport à la taille de l'entrée. Les conseils pour réduire la complexité temporelle des programmes C++ incluent : le choix des conteneurs appropriés (tels que vecteur, liste) pour optimiser le stockage et la gestion des données. Utilisez des algorithmes efficaces tels que le tri rapide pour réduire le temps de calcul. Éliminez les opérations multiples pour réduire le double comptage. Utilisez des branches conditionnelles pour éviter les calculs inutiles. Optimisez la recherche linéaire en utilisant des algorithmes plus rapides tels que la recherche binaire.

Le goulot d'étranglement des performances de Laravel révélé : la solution d'optimisation révélée ! Le goulot d'étranglement des performances de Laravel révélé : la solution d'optimisation révélée ! Mar 07, 2024 pm 01:30 PM

Le goulot d'étranglement des performances de Laravel révélé : la solution d'optimisation révélée ! Avec le développement de la technologie Internet, l’optimisation des performances des sites Web et des applications est devenue de plus en plus importante. En tant que framework PHP populaire, Laravel peut être confronté à des goulots d'étranglement en termes de performances pendant le processus de développement. Cet article explorera les problèmes de performances que les applications Laravel peuvent rencontrer et fournira des solutions d'optimisation et des exemples de code spécifiques afin que les développeurs puissent mieux résoudre ces problèmes. 1. Optimisation des requêtes de base de données Les requêtes de base de données sont l'un des goulots d'étranglement de performances courants dans les applications Web. exister

See all articles