mysql性能检查脚本-部分_MySQL
#!/bin/sh #ocpyang@126.com export black='\033[0m' export boldblack='\033[1;0m' export red='\033[31m' export boldred='\033[1;31m' export green='\033[32m' export boldgreen='\033[1;32m' export yellow='\033[33m' export boldyellow='\033[1;33m' export blue='\033[34m' export boldblue='\033[1;34m' export magenta='\033[35m' export boldmagenta='\033[1;35m' export cyan='\033[36m' export boldcyan='\033[1;36m' export white='\033[37m' export boldwhite='\033[1;37m' cecho () ## -- Function to easliy print colored text -- ## # Color-echo. # 参数 $1 = message # 参数 $2 = color { local default_msg="No message passed." message=${1:-$default_msg} # 如果$1没有输入则为默认值default_msg. color=${2:-black} # 如果$1没有输入则为默认值black. case $color in black) printf "$black" ;; boldblack) printf "$boldblack" ;; red) printf "$red" ;; boldred) printf "$boldred" ;; green) printf "$green" ;; boldgreen) printf "$boldgreen" ;; yellow) printf "$yellow" ;; boldyellow) printf "$boldyellow" ;; blue) printf "$blue" ;; boldblue) printf "$boldblue" ;; magenta) printf "$magenta" ;; boldmagenta) printf "$boldmagenta" ;; cyan) printf "$cyan" ;; boldcyan) printf "$boldcyan" ;; white) printf "$white" ;; boldwhite) printf "$boldwhite" ;; esac printf "%s\n" "$message" tput sgr0 # tput sgr0即恢复默认值 printf "$black" return } cechon () # Color-echo. # 参数1 $1 = message # 参数2 $2 = color { local default_msg="No message passed." # Doesn't really need to be a local variable. message=${1:-$default_msg} # 如果$1没有输入则为默认值default_msg. color=${2:-black} # 如果$1没有输入则为默认值black. case $color in black) printf "$black" ;; boldblack) printf "$boldblack" ;; red) printf "$red" ;; boldred) printf "$boldred" ;; green) printf "$green" ;; boldgreen) printf "$boldgreen" ;; yellow) printf "$yellow" ;; boldyellow) printf "$boldyellow" ;; blue) printf "$blue" ;; boldblue) printf "$boldblue" ;; magenta) printf "$magenta" ;; boldmagenta) printf "$boldmagenta" ;; cyan) printf "$cyan" ;; boldcyan) printf "$boldcyan" ;; white) printf "$white" ;; boldwhite) printf "$boldwhite" ;; esac printf "%s" "$message" tput sgr0 # tput sgr0即恢复默认值 printf "$black" return } #set mysql evn MYSQL_USER=system #mysql的用户名 MYSQL_PASS='password' #mysql的登录用户密码 MYSQL_HOST=192.168.2.188 #1.mysql版本 v_01="select @@version;" v_02="v02.`date +%Y%m%d%H%M%S`.txt" mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${v_01}" >${v_02} v_03=`cat ${v_02} | grep -v @@version` cechon "1. mysql runing version is: ${v_03} " red echo " " rm -rf ${v_02} #2.系统mysql的进程数 mysql_processnum=`ps -ef | grep "mysql" | grep -v "grep" | wc -l` cechon "2. mysql process number is: ${mysql_processnum} " red echo " " #3.客户端连接的mysql进程数 conn_01="conn01.`date +%Y%m%d%H%M%S`.txt" conn_02="show processlist;" mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${conn_02}" | grep -v Id >${conn_01} client_conn_num=`cat ${conn_01} |wc -l` cechon "3. mysql client connect number is: ${client_conn_num} " red echo " " rm -rf ${conn_01} #4.QPS(每秒事务量) qps_01="show global status like 'Questions';" qps_re="qpsre.`date +%Y%m%d%H%M%S`.txt" mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${qps_01}" |grep -v Variable_name \ |cut -f 2 >${qps_re} qps_02=`cat ${qps_re}` qps_03=`cat /proc/uptime |awk '{print $1}'` qps_04=`awk 'BEGIN{print '${qps_02}' / '${qps_03}'}'` #shell默认不支持浮点运算 cechon "4. current mysql server QPS is: ${qps_04} " red echo " " rm -rf ${qps_re} #5.TPS(每秒事务量) tps_01="show status where Variable_name in('Com_commit'); " tps_02="show status where Variable_name in('Com_rollback'); " tps_re01="tpsre01.`date +%Y%m%d%H%M%S`.txt" tps_re02="tpsre02.`date +%Y%m%d%H%M%S`.txt" mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${tps_01}" |grep -v Variable_name \ |cut -f 2 >${tps_re01} mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${tps_02}" |grep -v Variable_name \ |cut -f 2 >${tps_re02} tps_03=`cat ${tps_re01}` tps_04=`cat ${tps_re02}` tps_sum=`awk 'BEGIN{print '${tps_03}' + '${tps_04}'}'` #shell默认不支持浮点运算 tps_uptime=`cat /proc/uptime |awk '{print $1}'` tps_avg=`awk 'BEGIN{print '${tps_sum}' / '${tps_uptime}'}'` #shell默认不支持浮点运算 cechon "5. current mysql server TPS is: ${tps_avg} " red echo " " rm -rf ${tps_re01} rm -rf ${tps_re02} #6.key Buffer 命中率 #key_buffer_read_hits = (1-key_reads / key_read_requests) * 100% kbrd_01="show status like 'Key_reads'; " kbrd_02="show status like 'Key_read_requests'; " kbrd_re01="kbrd01.`date +%Y%m%d%H%M%S`.txt" kbrd_re02="kbrd02.`date +%Y%m%d%H%M%S`.txt" mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${kbrd_01}" |grep -v Variable_name \ |cut -f 2 >${kbrd_re01} mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${kbrd_02}" |grep -v Variable_name \ |cut -f 2 >${kbrd_re02} kbrd_03=`cat ${kbrd_re01}` kbrd_04=`cat ${kbrd_re02}` if [ "${kbrd_03}" -eq 0 ];then cechon "6.1 there is no any value!" green echo " " else kbrd_05=`awk 'BEGIN{print '${kbrd_03}' / '${kbrd_04}'}'` #shell默认不支持浮点运算 kbrd_06=`awk 'BEGIN{print '1-${kbrd_05}'}'` #shell默认不支持浮点运算 key_buffer_read_hits=`awk 'BEGIN{print '${kbrd_06}' * 100}'` cechon "6.1 current mysql key_buffer_read_hits is: ${key_buffer_read_hits} " red echo " " fi rm -rf ${kbrd_re01} rm -rf ${kbrd_re02} #key_buffer_write_hits = (1-key_writes / key_write_requests) * 100% kbwd_01="show status like 'Key_writes'; " kbwd_02="show status like 'Key_write_requests'; " kbwd_re01="kbwd01.`date +%Y%m%d%H%M%S`.txt" kbwd_re02="kbwd02.`date +%Y%m%d%H%M%S`.txt" mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${kbwd_01}" |grep -v Variable_name \ |cut -f 2 >${kbwd_re01} mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${kbwd_02}" |grep -v Variable_name \ |cut -f 2 >${kbwd_re02} kbwd_03=`cat ${kbwd_re01}` kbwd_04=`cat ${kbwd_re02}` if [ "${kbwd_03}" -eq 0 ] ;then cechon "6.2 there is no any value!" green echo " " else kbwd_05=`awk 'BEGIN{print '${kbwd_03}' / '${kbwd_04}'}'` #shell默认不支持浮点运算 kbwd_06=`awk 'BEGIN{print '1-${kbwd_05}'}'` #shell默认不支持浮点运算 key_buffer_write_hits=`awk 'BEGIN{print '${kbwd_06}' * 100}'` cechon "6.2 current mysql key_buffer_write_hits is: ${key_buffer_write_hits} " red echo " " fi rm -rf ${kbwd_re01} rm -rf ${kbwd_re02} #7.InnoDB Buffer命中率 #Innodb_buffer_read_hits = (1 - innodb_buffer_pool_reads / innodb_buffer_pool_read_requests) * 100% innob_01="show status like 'Innodb_buffer_pool_reads'; " innob_02="show status like 'Innodb_buffer_pool_read_requests'; " innob_re01="innob_re01.`date +%Y%m%d%H%M%S`.txt" innob_re02="innob_re02.`date +%Y%m%d%H%M%S`.txt" mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${innob_01}" |grep -v Variable_name \ |cut -f 2 >${innob_re01} mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${innob_02}" |grep -v Variable_name \ |cut -f 2 >${innob_re02} innob_03=`cat ${innob_re01}` innob_04=`cat ${innob_re02}` if [ "${innob_03}" -eq 0 ] ;then cechon "7. there is no any value!" green echo " " else innob_05=`awk 'BEGIN{print '${innob_03}' / '${innob_04}'}'` #shell默认不支持浮点运算 innob_06=`awk 'BEGIN{print '1-${innob_05}'}'` #shell默认不支持浮点运算 innodb_buffer_read_hits=`awk 'BEGIN{print '${innob_06}' * 100}'` cechon "7. current mysql Innodb_buffer_read_hits is: ${innodb_buffer_read_hits} " red echo " " fi rm -rf ${innob_re01} rm -rf ${innob_re02} #8.Query Cache命中率 #Query_cache_hits =((Qcache_hits/(Qcache_hits+Qcache_inserts+Qcache_not_cached))*100) qc_01="show status like 'Qcache_hits'; " qc_02="show status like 'Qcache_inserts'; " qc_03="show status like 'Qcache_not_cached'; " qc_re01="qc_re01.`date +%Y%m%d%H%M%S`.txt" qc_re02="qc_re02.`date +%Y%m%d%H%M%S`.txt" qc_re03="qc_re03.`date +%Y%m%d%H%M%S`.txt" mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${qc_01}" |grep -v Variable_name \ |cut -f 2 >${qc_re01} mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${qc_02}" |grep -v Variable_name \ |cut -f 2 >${qc_re02} mysql -h${MYSQL_HOST} -u${MYSQL_USER} -p${MYSQL_PASS} -e"${qc_03}" |grep -v Variable_name \ |cut -f 2 >${qc_re03} qc_04=`cat ${qc_re01}` qc_05=`cat ${qc_re02}` qc_06=`cat ${qc_re03}` if [ "${qc_04}" -eq 0 ] ;then cechon "8. there is no any value!" green echo " " else qc_07=`awk 'BEGIN{print '${qc_04}' + '${qc_05}' + '${qc_06}' }'` qc_08=`awk 'BEGIN{print '${qc_04}'/'${qc_07}'}'` query_cache_hits=`awk 'BEGIN{print '${qc_08}' * 100}'` cechon "8. current mysql query_cache_hits is: ${query_cache_hits} " red echo " " fi rm -rf ${qc_re01} rm -rf ${qc_re02} rm -rf ${qc_re03}

Outils d'IA chauds

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

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

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

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 !

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

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

Les téléphones mobiles vivox100 et x100 sont des modèles représentatifs de la gamme de produits de téléphonie mobile de Vivo. Ils représentent respectivement les niveaux de technologie haut de gamme de Vivo à différentes périodes. Par conséquent, ces deux téléphones mobiles présentent certaines différences en termes de conception, de performances et de fonctions. Cet article procédera à une comparaison détaillée entre ces deux téléphones mobiles en termes de comparaison des performances et d'analyse des fonctions pour aider les consommateurs à mieux choisir le téléphone mobile qui leur convient. Tout d’abord, examinons la comparaison des performances entre les vivox100 et x100. vivox100s est équipé des dernières

Dans ce didacticiel, nous vous aiderons à révéler les superpositions de performances cachées dans Windows 11. Grâce à la fonctionnalité Performance Overlay de Windows 11, vous pourrez surveiller les ressources de votre système en temps réel. Vous pouvez afficher en temps réel l'utilisation du processeur, l'utilisation du disque, l'utilisation du GPU, l'utilisation de la RAM, etc. sur l'écran de votre ordinateur. Ceci est pratique lorsque vous jouez à des jeux ou utilisez de gros programmes graphiques (tels que des éditeurs vidéo) et que vous devez vérifier dans quelle mesure les performances du système sont affectées lors de l'utilisation d'un programme spécifique. Bien qu'il existe d'excellents logiciels gratuits disponibles pour surveiller les performances du système et que certains outils intégrés tels que Resource Monitor puissent être utilisés pour vérifier les performances du système, la fonction de superposition des performances présente également des avantages. Par exemple, vous n'avez pas besoin de quitter le programme ou l'application que vous utilisez actuellement ou

Comparaison des performances de Windows 10 et Windows 11 : lequel est le meilleur ? Avec le développement et les progrès continus de la technologie, les systèmes d’exploitation sont constamment mis à jour et mis à niveau. En tant que l'un des plus grands développeurs de systèmes d'exploitation au monde, la série de systèmes d'exploitation Windows de Microsoft a toujours attiré beaucoup d'attention de la part des utilisateurs. En 2021, Microsoft a lancé le système d’exploitation Windows 11, ce qui a suscité de nombreuses discussions et attentions. Alors, quelle est la différence de performances entre Windows 10 et Windows 11 ?

PHP et Go sont deux langages de programmation couramment utilisés et présentent des caractéristiques et des avantages différents. Parmi eux, la différence de performances est un problème qui préoccupe généralement tout le monde. Cet article comparera les langages PHP et Go du point de vue des performances et démontrera leurs différences de performances à travers des exemples de code spécifiques. Tout d’abord, présentons brièvement les fonctionnalités de base du langage PHP et Go. PHP est un langage de script initialement conçu pour le développement Web. Il est facile à apprendre et à utiliser et est largement utilisé dans le domaine du développement Web. Le langage Go est un langage compilé développé par Google.

Le système d'exploitation Windows a toujours été l'un des systèmes d'exploitation les plus utilisés sur les ordinateurs personnels, et Windows 10 a longtemps été le système d'exploitation phare de Microsoft jusqu'à récemment, lorsque Microsoft a lancé le nouveau système Windows 11. Avec le lancement du système Windows 11, les gens se sont intéressés aux différences de performances entre les systèmes Windows 10 et Windows 11. Lequel est le meilleur entre les deux ? Jetons d’abord un coup d’œil à W

À l’ère de l’Internet mobile, les smartphones sont devenus un élément indispensable de la vie quotidienne des gens. Les performances des smartphones déterminent souvent directement la qualité de l’expérience utilisateur. En tant que « cerveau » d’un smartphone, les performances du processeur sont particulièrement importantes. Sur le marché, la série Qualcomm Snapdragon a toujours été représentative de performances, de stabilité et de fiabilité élevées, et récemment Huawei a également lancé son propre processeur Kirin 8000, qui aurait d'excellentes performances. Pour les utilisateurs ordinaires, comment choisir un téléphone mobile doté de performances élevées est devenu une question clé. Aujourd'hui, nous allons

Ollama est un outil super pratique qui vous permet d'exécuter facilement des modèles open source tels que Llama2, Mistral et Gemma localement. Dans cet article, je vais vous présenter comment utiliser Ollama pour vectoriser du texte. Si vous n'avez pas installé Ollama localement, vous pouvez lire cet article. Dans cet article, nous utiliserons le modèle nomic-embed-text[2]. Il s'agit d'un encodeur de texte qui surpasse OpenAI text-embedding-ada-002 et text-embedding-3-small sur les tâches à contexte court et à contexte long. Démarrez le service nomic-embed-text lorsque vous avez installé avec succès o

La comparaison des performances des méthodes de retournement des valeurs de clé de tableau PHP montre que la fonction array_flip() fonctionne mieux que la boucle for dans les grands tableaux (plus d'un million d'éléments) et prend moins de temps. La méthode de la boucle for consistant à retourner manuellement les valeurs clés prend un temps relativement long.
