MySQL шууд. SQL асуулгад хяналт тавих

Гэр / Асахгүй байна

Тодорхой CMS хэрхэн ажилладагийг ойлгохын тулд та ажлаа хөнгөвчлөхийн тулд янз бүрийн хэрэгслийг ашиглах хэрэгтэй.
Хамгийн сонирхолтой сэдэв бол мэдээллийн сантай ажиллах явдал юм. Мэдээжийн хэрэг, асуулга, асуулгын үр дүнг судлахын тулд та бүх нийтийн зүйлийг ашиглах хэрэгтэй. Алдартай хөдөлгүүр болон захиалгат системтэй аль алинд нь тогтвортой ажиллах зүйл.
Та агуулгын удирдлагын системтэй бөгөөд шинэ хэрэглэгч нэмэх эсвэл нууц үг солих хэрхэн хэрэгжиж байгааг харах хэрэгтэй гэж бодъё.

Өгөгдлийн сантай ажиллахад хяналт тавих боломжийг олгодог ихэнх хэрэгслүүд нь төлбөртэй байдаг [нэг, хоёр]. Би илүү хөнгөн, илүү тохиромжтой зүйл хүссэн тул mysql-proxy-г сонгосон. Хэдийгээр энэ хэрэгслийн чадавхи надад хэрэгтэй зүйлээс хамаагүй өргөн боловч би зөвхөн үндсэн зүйлийг тайлбарлах болно. Windows болон Unix системүүд дээр ажилладаг.

Та үүнийг эндээс татаж авах боломжтой: dev.mysql.com/downloads/mysql-proxy
Эхний алхам бол түгээлтийн сонголтыг шийдэх явдал юм. Асаалттай одоогоор хамгийн сүүлийн хувилбар"MySQL Proxy 0.8.3 alpha", миний үйлдлийн систем Windows 7 тул бүх тест үүн дээр байх болно.

"Татаж авах" товчийг дарсны дараа таныг нэвтрэх эсвэл бүртгүүлэхийг хүсэх боловч доор нь шаардлагагүй алхамгүйгээр татаж авах холбоос байна. (Ubuntu болон Debian репозиторууд нь урьдчилан бүтээсэн багцуудтай тул: sudo apt-get install mysql-proxy)

7.9 МБ хэмжээтэй түгээлт нь үндсэн модулиудын дэмжлэгтэй Lua-г агуулдаг гэдгийг тэмдэглэхийг хүсч байна.

Архивыг татаж авсны дараа та өөрт тохирсон лавлах руу задлах хэрэгтэй. Жишээ болгон C:\mysql-proxy-г авч үзье.
Аппликешныг эхлүүлэхийн тулд та параметрүүдийг шийдэх хэрэгтэй.

Энэ утгаараа таны суулгасан зүйлээс их зүйл шалтгаална. Би Winginx-ийг LAMP болгон ашигладаг, та энэ багцын талаар эндээс уншиж болно: winginx.ru
Анхдагч байдлаар, MySQL 3306 порт дээр ажилладаг тул бид үүнд хүрэхгүй.
Бид өгөгдлийн санд php-г холбох портыг өөрчлөх хэрэгтэй. Үүнийг хийхийн тулд та php.ini-г засах хэрэгтэй
“mysql.default_port” мөрийг олоод портыг тохируулна уу (анхдагчаар 4040). Илүү түгээмэл ажиллагаатай бол "mysqli.default_port"-ыг 4040 болгож өөрчил

Бэлтгэл ажил дууссан тул ажилдаа орцгооё.

Сонголт 1: Хүсэлтийг хянах.
Энгийн хяналт тавихын тулд та Lua скрипт ашиглах хэрэгтэй. Миний хэлсэнчлэн Луа багтсан тул та шинэ зүйл суулгах шаардлагагүй болно.
C:\mysql-proxy\ санд дараах агуулгатай энгийн view.lua скрипт үүсгэцгээе.

Хэрэв string.byte(пакет) == proxy.COM_QUERY байвал унших_асуулт(пакет) функц дараа нь хэвлэх(string.sub(пакет, 2)) төгсгөлийн төгсгөл

Одоо та үр дүнг шалгаж болно.
Тохиромжтой болгох үүднээс C:\mysql-proxy директорт дараах агуулга бүхий view.bat файл үүсгэцгээе.

C:\mysql-proxy\bin\mysql-proxy.exe --proxy-lua-script=C:\mysql-proxy\view.lua --log-file="C:\mysql-proxy\mysql-proxy- log.txt" --proxy-backend-addresses=localhost:3306

Proxy-backend-addresses - бидний хүсэлтийг прокси хийх MySQL серверийн хаяг.

Вэб серверийг эхлүүлж, өгөгдлийн санд асуулга хийснээр та дараах зүйлийг харж болно.

Хүсэлтийг харуулж байна, сайн байна.

Сонголт 2: Хүсэлтийг хянаж, файл руу бичнэ үү.
Файл руу хүсэлт бичихийн тулд бид стандарт Lua боломжуудыг ашиглах болно.
C:\mysql-proxy\ санд дараах агуулгатай view-write.lua файл үүсгэцгээе.

Функц read_query(пакет) бол string.byte(packet) == proxy.COM_QUERY дараа нь локал файл = io.open("C:\\mysql-proxy\\sql-log.txt", "a") file:write( string.sub(packet, 2) .. "\n") file:close() print(string.sub(packet, 2)) end end
Тэгээд bat файл- "view-write.bat"
C:\mysql-proxy\bin\mysql-proxy.exe --proxy-lua-script="C:\mysql-proxy\view-write.lua" --log-file="C:\mysql-proxy\ mysql-proxy-log.txt" --proxy-backend-addresses=localhost:3306

Асуултуудыг гүйцэтгэсний дараах үр дүн ("C:\mysql-proxy\sql-log.txt" дээр)

Асуултуудыг өөрсдөө харуулахаас гадна бид эдгээр асуулгын үр дүнг харуулах шаардлагатай байж магадгүй.

Сонголт 3. Асуулга, үр дүн
Үүнтэй ижил схемийг ашиглан бид "view-result.lua" скриптийг үүсгэнэ.
функц read_query(пакет) бол пакет:байт() == прокси.COM_QUERY дараа нь хэвлэнэ("Асуулга: " .. string.sub(пакет, 2)) локал файл = io.open("C:\\mysql-proxy\" \sql-log.txt", "a") file:write("Query: " .. string.sub(packet, 2) .. "\n") file:close() proxy.queries:append(2, string.char(proxy.COM_QUERY) .. string.sub(packet, 2), (resultset_is_needed = true)) proxy.queries:append(1, пакет, (resultset_is_needed = true)) return proxy.PROXY_SEND_QUERY төгсгөлийн функц унших_query_result( inj) хэрэв inj.id == 1 бол inj.resultset.rows дахь мөрийн хувьд локал i = 1 локал талбар = () хийх бол мөр[i] мөр[i] == мөрийг хийж, дараа нь локал файлын төгсгөлийг = io хийнэ. open("C:\\mysql-proxy\\sql-log.txt", "a") file:write("Хариултын талбар: " .. inj.resultset.fields[i].name .. " => " .. row[i] .. "\n") file:close() print("Хариултын талбар: " .. inj.resultset.fields[i].name .. " => " .. мөр[i]) i = i + 1 төгсгөлийн төгсгөл буцах прокси.PROXY_IGNORE_RESULT төгсгөлийн төгсгөл

Мөн view-result.bat
C:\mysql-proxy\bin\mysql-proxy.exe --proxy-lua-script="C:\mysql-proxy\view-result.lua" --log-file="C:\mysql-proxy\ mysql-proxy-log.txt" --proxy-backend-addresses=localhost:3306

Үүний үр дүнд бид хүсэлт, хариултыг унших боломжтой хэлбэрээр бүрэн бүртгэдэг

MySQL бол нээлттэй эхийн мэдээллийн сангийн удирдлагын систем эх код , Structured Query Language (SQL) дээр суурилсан. Системийг үнэ төлбөргүй ашиглах боломжтой гэдгээс гадна MySQL-ийн давуу тал нь ажилладаг бараг бүх платформ дээр. MySQL бол дэлхийн хамгийн өргөн хэрэглэгддэг мэдээллийн сангийн системүүдийн нэг бөгөөд үүний үндсэн дээр олон динамик вэб сайтууд бүтээгддэг. Нээлттэй эхийн хувилбарын зэрэгцээ мэдээллийн сангийн удирдлагын системийн арилжааны хувилбар бас бий. MySQL-г арилжааны бүтээгдэхүүнд ашиглахын тулд та лиценз худалдаж авах ёстой.

MySQL-ийн ашиг тус

MySQL нь нээлттэй эхийн мэдээллийн баазын зах зээлд хамгийн их хувийг эзэлдэг. Тиймээс MySQL дээр ном, нийтлэл, дэмжлэгийн дутагдал байхгүй.

Бусад мэдээллийн баазтай харьцуулахад MySQL-ийг тохируулах, удирдахад хялбар байдаг. MySQL Administrator гэх мэт хэрэгслүүд таныг эхлүүлэхэд бэлэн байна.

MySQL-ийн хамгийн том давуу талуудын нэг: аянгын хурд! Энгийн бүтцийн ачаар MySQL нь нөөцийн хэрэглээний хувьд маш үр дүнтэй бөгөөд санах ой бараг ашигладаггүй.

Үйлдвэрлэгч-
MySQL: бусад олон үйлчилгээний үндэс суурь

Хэрэв таны өгөгдлийн сан маш удаан, зарим асуулгад алдаа гаргадаг эсвэл бүрэн ашиглах боломжгүй бол тухайн мэдээллийн баазаас хамааралтай бүх програмын гүйцэтгэл, чанар муудна. хангах байнгын бөгөөд хамгийн хурдан бэлэн байдалпрограмуудыг хэрэгжүүлэх шаардлагатай байна хяналт тавихсуурь MySQL өгөгдөл. Тиймээс, мэдээллийн баазынхаа гүйцэтгэлийг оновчтой болгосноор та өөр өөр түвшний бүх үйлчилгээний хүртээмж, гүйцэтгэлийн үндсийг бүрдүүлдэг.

Юу нь PRTG нь MySQL хяналтын бүрэн хэрэгсэл болгодог вэ?

Хэрэв таны вэбсайт, онлайн дэлгүүр эсвэл вэб програм нь MySQL мэдээллийн баазыг ашиглаж, мэдээллийн сан нь эвдэрсэн бол сайт өөрөө хохирох болно: энэ нь зөв харагдахгүй байх, зарим хэсэгт хандах боломжгүй эсвэл сайтыг ачаалах боломжгүй байж магадгүй юм.

PRTG нь танд байнга хяналт тавих боломжийг олгодог таны MySQL мэдээллийн сангийн бэлэн байдал. PRTG-ийн тусламжтайгаар та өгөгдлийн сангийн сул зогсолтыг багасгаж, мэдээллийн сангийн тасалдалд шууд хариу өгөх боломжтой. Үүний үр дүнд хэрэглэгчийн сэтгэл ханамж нэмэгдэж, ажилчдын бүтээмж нэмэгдэнэ.

PAESSLER-ийн иж бүрэн MySQL хяналтын хэрэгсэл нь өгөгдлийн сангийн бэлэн байдал төдийгүй MySQL-ийн бусад гүйцэтгэлийн өгөгдлийг хянадаг. Үүнийг хийхийн тулд PRTG автоматаар мэдээллийн баазаас асуудаг цагийг хэмждэг, холболт үүсгэх, SQL хайлтыг гүйцэтгэх, гүйлгээг боловсруулах, холболтыг зогсооход шаардлагатай. PRTG хяналтын самбар нь тодорхой статистик мэдээллийг харуулдаг нийт хүсэлтийн хугацаа.

PRTG нь танд хянах боломжийг олгодог тодорхой өгөгдлийн багц MySQL мэдээллийн сангаас. Жишээлбэл, та онлайн дэлгүүр эсвэл програмын мэдээллийн сангаас зарим мэдээллийг авах боломжтой. Үүнийг хийхийн тулд PRTG програм дээр өөрийн SQL асуулгыг тодорхойлж, тэдгээрийн буцаах утгыг хянахад хангалттай.

Буцах утгуудаас гадна PRTG нь асуулгын гүйцэтгэлийн хугацаа болон өгөгдлийн хүснэгтэд санал авсан мөрийн тоог харуулна. Ашиглаж байна тохируулах боломжтой босго, та автомат дохиолол ажиллуулж, тухайлбал, онлайн дэлгүүрт тодорхой бүтээгдэхүүний нөөц хомсдох тухай мэдэгдэл хүлээн авах боломжтой.

Олон хүний ​​нэг ашигтай функцууд PRTG бол захиалгат тайланг бий болгох явдал юм. Тайлангийн агуулгыг хүссэн хэлбэрээр тохируулах боломжтой бөгөөд дараа нь тайлангуудыг дуудаж болно нисч байнаэсвэл тэдгээрийг үүсгэх автоматаар(өдөр бүр, долоо хоног бүр эсвэл сар бүр) дараа нь илгээх, жишээлбэл имэйлээр.

PRTG нь таны ажилд чухал ач холбогдолтой бүх өгөгдлийг агуулсан тайланг үүсгэх боломжийг танд олгоно. Мэдээллийн функц нь хангах хамгийн тохиромжтой арга юм хамгийн сүүлийн үеийн мэдээлэлхамт олон, дээд албан тушаалтнууд. Зүгээр л холбогдох мэдээллийг сонгоод, тайланг зохих менежерүүдэд автоматаар илгээх болно. Жишээлбэл, та вэбсайтын хамгийн чухал статистик мэдээллийг маркетингийн багт дамжуулах эсвэл нээлттэй тасалбарын тоог автоматаар тусламжийн ширээ рүү илгээх боломжтой.

PRTG MySQL хяналтын програм хангамж нь дохиоллын функцтэй. Хэрэв мэдээллийн сан байхгүй эсвэл зарим асуулга нь шаардлагатай (эсвэл буруу) утгыг буцааж өгөхгүй бол PRTG-г энэ нөхцөл байдлын талаар автоматаар мэдэгдэл хүлээн авахаар тохируулж болно.

Мэдэгдэл нь мессеж хэлбэрээр байж болно имэйл, Ухаалаг утсандаа SMS эсвэл түлхэх мэдэгдлүүд. Асуудлыг даамжрахаас өмнө танд цаг тухайд нь мэдэгдэх болно. PRTG API-ийн тусламжтайгаар та захиалгат мэдэгдэл үүсгэж, скрипт эсвэл HTTP үйлдлийг автоматаар гүйцэтгэх боломжтой.

PRTG-ийн тусламжтайгаар бүрэн хяналтыг мэдрээрэй!

PRTG нь танд байнга хяналт тавих боломжийг олгодог
MySQL мэдээллийн сан нь явж байхдаа ч гэсэн

PRTG нь хэдхэн минутын дотор суулгадаг бөгөөд ихэнх хөдөлгөөнт төхөөрөмжүүдэд нийцдэг.

PRTG нь эдгээр болон бусад олон үйлдвэрлэгч, програмуудыг танд зориулж хянадаг

PRTG руу шилжих нь хялбар бөгөөд аюулгүй

Зах зээл дээр MySQL серверүүдийг хянах олон хэрэгсэл байдаг. PRTG нь дараах давуу талуудтай.

Нуугдаагүй
самбар

Олон администраторууд онцгой тохиолдлуудад янз бүрийн хяналтын хэрэгслийг ашигладаг. Энэхүү хослолын хэрэгслийг удирдах нь цаг хугацаа, эрч хүч шаарддаг. Үүний үр дүнд тоо томшгүй олон цагийг илүү үр дүнтэй зарцуулах боломжтой болно. Түүнээс гадна ийм байдлаар товч тоймыг олж авах нь ихэвчлэн боломжгүй байдаг.

  • 30 хоногийн турш PRTG-ийн бүрэн хувилбар
  • 30 хоногийн дараа - үнэгүй хувилбар
  • Өргөтгөсөн хувилбарын хувьд - арилжааны лиценз

PRTG ашиглан MySQL мэдээллийн сангийн гүйцэтгэлийг хэрхэн хянах вэ

MySQL-г PRTG ашиглан хянаж эхлэхийн тулд та хэдхэн энгийн алхмуудыг дагахад л хангалттай. PRTG шийдэл нь бэлэн MySQL хяналтын мэдрэгчтэй ирдэг. Ерөнхийдөө та энэ мэдрэгчийг ашиглан өгөгдлийн сангийн бэлэн байдал, гүйцэтгэлийн хугацаа гэх мэт үндсэн мэдээллийг хянах боломжтой.

Илүү нарийвчилсан хэмжигдэхүүнийг авахын тулд өөрийн SQL асуулгыг тусдаа файл болгон нэмнэ үү.

MySQL мэдрэгчийг тохируулах нь хялбар бөгөөд их цаг хугацаа шаарддаггүй.

1. SQL Query үүсгэх

Өөрийгөө тодорхойлсон SQL асуулга нь гүйцэтгэлийн янз бүрийн үндсэн үзүүлэлтүүдийг хянах боломжийг олгодог, тухайлбал:

  • вэбсайтын зочдын тоо;
  • онлайн дэлгүүрийн борлуулалтын тоо;
  • хэрэглэгчийн дэмжлэгт нээлттэй хүсэлт.

Боломжууд бараг төгсгөлгүй юм. Цорын ганц шаардлага бол тохирох SQL мэдэгдлийг зааж өгөх ёстой.

Энэ нь юу байж болох тухай жишээ энд байна:


test.order-аас SELECT count(idorder), sum(утга), дундаж(утга), GROUP_CONCAT(хэрэглэгчийн SEPARATOR ", ")

2. Скриптийг хадгалах

SQL асуулгад хадгална уу тусдаа файлтаны хатуу диск дээр. Файлын өргөтгөл нь .sql бөгөөд дараах замыг сонгосон эсэхийг шалгана уу.

C:\Program Files (x86)\PRTG Network Monitor\Custom Sensors\sql\mysql

3. PRTG-д мэдрэгч үүсгэх

PRTG програмд ​​мэдрэгч нэмэхээсээ өмнө таны орчин шаардлагад нийцэж байгаа эсэхийг шалгаарай (дэлгэрэнгүй мэдээллийг манай хэрэглэгчийн гарын авлагаас үзнэ үү). Энэ төхөөрөмж нь PRTG программ дахь таны мэдээллийн санг төлөөлөх тул төхөөрөмжийн тохиргоонд зөв хандалтын өгөгдлийг оруулахад онцгой анхаарал хандуулах хэрэгтэй.

дарна уу "Мэдрэгч нэмэх"Мэдрэгчийг хүлээн авах төхөөрөмж дээр MySQL-г хайгаад MySQL-v2-Sensor-г сонгоно уу. Дараагийн харилцах цонхонд мэдрэгчийн нэр болон хяналт тавих мэдээллийн сангийн нэрийг оруулна уу.

Дараа нь өөрийн SQL асуулга агуулсан SQL файлыг сонгоод (2-р алхамаас) мэдрэгчийг хүссэнээр тохируулна уу. Жишээлбэл, та асуулгын гүйцэтгэлийн цагийг хянах эсвэл өгөгдлийн хүснэгтээс утгыг задлан шинжлэхийг хүсч байгаа эсэхээ тодорхойл. Хэрэв та сүүлчийн сонголтыг сонговол хүснэгтээс аль утгыг уншихыг зааж өгнө үү.

PRTG мэдрэгч нь харилцах цонхыг хаасны дараа нэмэгдэх болно. Энэ нь иймэрхүү харагдах болно.

PRTG таны амьдралыг илүү хялбар болгодог!

Манай програм хангамжхяналт танд зориулагдсан
гарч болзошгүй асуудлын талаар цаг тухайд нь мэдэгдэнэ.
Энэ нь танд илүү чухал зүйлд анхаарлаа төвлөрүүлэх боломжийг олгодог.

PRTG нь цаг хэмнэдэг

PRTG-г худалдаж авснаар та сервер болон бүх сүлжээний ажиллагааг хянах нэг төвлөрсөн хэрэгслийг авах болно. Манай апп болон хяналтын самбарын тусламжтайгаар бүх дэд бүтцээ харагдуулна уу.

PRTG таны мэдрэлийг аварна

PRTG суулгах нь маш хялбар. PRTG-г ашиглаж эхлэх эсвэл өөр хяналтын хэрэгслээс шилжих нь автомат илрүүлэлтийн ачаар ямар ч саадгүй болно бэлэн загваруудолон тооны төхөөрөмжүүдийн хувьд.

PRTG нь мөнгө хэмнэдэг

PRTG нь мөнгөний үнэ цэнэтэй юм. Манай үйлчлүүлэгчдийн 80% нь сүлжээний менежментэд хэмнэлт хийсэн гэж хэлсэн. PRTG лицензийн зардал дунджаар хэдхэн долоо хоногийн дотор төлдөг.

Paessler AG нь PRTG ашигладаг дэлхий даяарх 600 гаруй мэдээллийн технологийн хэлтэст өргөн хүрээний судалгаа явуулсан.
Энэ санал асуулгын зорилго нь оновчтой болон нарийн тааруулахМанай сүлжээний хяналтын програм хангамж
Энэ нь администраторуудын хэрэгцээг илүү хангах болно.
Бидний судалгааны үр дүнгээс үзэхэд оролцогчдын 95-аас дээш хувь нь PRTG-г санал болгоход бэлэн эсвэл аль хэдийн санал болгосон байна.

Олон шагнал хүртсэн програм хангамж

Бид өдөр бүр хүчирхэг ба хангахыг хичээдэг
Манай үйлчлүүлэгчдэд зориулсан энгийн програм хангамж.
Мэдээжийн хэрэг, бид амжилтанд хүрч, ажилдаа талархаж явахад бахархдаг.

PRTG бол хяналтын цогц хэрэгсэл юм
мэдээллийн сан

PRTG нь MySQL-г дэмждэг төдийгүй бусад мэдээллийн сангийн программ хангамжийг хянахад тохиромжтой. Энэхүү программ нь Microsoft SQL, Oracle SQL, PostgreSQL зэрэг бүх үндсэн мэдээллийн сангийн орчинд зориулсан бэлэн мэдрэгчтэй. Нэмж дурдахад манай ADO SQL мэдрэгчийг бараг бүх мэдээллийн сангийн удирдлагын системд ашиглаж болно. Энэхүү мэдрэгч нь OLE DB эсвэл ODBC-ээр дамжуулан хандах боломжтой аливаа мэдээллийн эх сурвалжийг хянах боломжийг танд олгоно.

PRTG: Сүлжээний хяналтын хувьсгалт програм хангамж

Ашиглаж байна API, та PRTG-г өөрийн хэрэгцээнд нийцүүлэн дангаар нь болон динамик байдлаар тохируулах боломжтой.
  • HTTP API: HTTP хүсэлтийг ашиглан сүлжээний хяналт болон байгууламжийн удирдлагын өгөгдөлд хандах
  • Тусдаа мэдрэгч:Та сүлжээний бие даасан хяналтанд зориулж өөрийн мэдрэгчийг нэмж болно
  • Хувь хүний ​​​​мэдэгдэл:Та гадаад системд анхааруулга илгээхийн тулд өөрийн мэдэгдлүүдийг нэмж болно
  • Шинэ REST API мэдрэгч: XML болон JSON дэмждэг бараг бүх зүйлийг хянадаг

Бараг ямар ч орчин үеийн клиент-серверийн програмууд нь DBMS-гүйгээр хийх боломжгүй бөгөөд ихэнх байгууллагуудад мэдээллийн сангийн серверүүдийг хадгалах нь зөвхөн системийн администраторын мөрөн дээр байдаг. Стандарт хэрэгслүүд нь зөвхөн үндсэн асуудлыг шийдэх боломжийг олгодог бөгөөд тэдгээрийн функцууд нь үргэлж хангалттай байдаггүй. Гуравдагч талын хэрэгслүүд нь MySQL болон клоныг удирдахад маш хялбар болгоно.

Захиргааны интерфейс

MySQL болон клонууд нь анхдагчгүйгээр тараагддаг GUI. Хамгийн ихдээ энгийн тохиолдлуудудирдахад олон суурьтай бол хангалттай тушаалын мөр, сервер, мэдээллийн сан болон тэдгээрт үйлчилдэг администраторуудын тоо арав давсан тохиолдолд GUI-ийн хэрэгцээ илүү тодорхой болно. Oracle нь өөрийн хөгжүүлэлтийг санал болгож байна - өгөгдлийн сангийн хөгжүүлэгчид болон администраторуудад зориулсан цорын ганц хэрэгсэл, Windows, Linux, OS X-д зориулсан MySQL Workbench. Энэ нь танд өгөгдлийн санг нүдээр загварчлах, үүсгэх, удирдах боломжийг олгодог гайхалтай чадвар бүхий хүчирхэг орчин юм. Сервер тохируулах, бүртгэлийг удирдах, нөөцлөх, сэргээх, аудит хийх, статусыг хялбар хянах зэрэг бүх хэрэгслийг ашиглах боломжтой. Үүнийг бусад DBMS - MS-ээс хялбархан шилжүүлэхэд ашиглаж болно SQL сервер, Sybase ASE, PostreSQL болон бусад. Мөн нэмэлт өргөтгөлүүдийг ашиглан чадавхийг нэмэгдүүлэх боломжтой. Интерфэйс нь нутагшаагүй байна. Олон тооны функцууд байдаг тул орчин нь ерөнхийдөө тохиромжтой боловч та үүнд дасахын тулд хэсэг хугацаа зарцуулах хэрэгтэй болно. Олон нийтийн (OSS) хувилбар нь GNU GPL-ийн дагуу лицензтэй. Суурилуулалт нь ямар ч асуудал үүсгэхгүй, Linux, Windows болон OS X-ийн янз бүрийн түгээлтийн багцууд байдаг. Red Hat / CentOS-ийн хувьд EPEL, Ubuntu APT хөгжүүлэгчийн агуулахыг ашиглах нь дээр.

$ wget -c http://dev.mysql.com/get/mysql-apt-config_0.2.1-1ubuntu14.04_all.deb $ sudo dpkg -i mysql-apt-config_0.2.1-1ubuntu14.04_all.deb $ sudo apt -mysql-workbench суулгаарай

PhpMyAdmin нь хостуудын дунд маш их алдартай бөгөөд өгөгдлийн сангийн менежмент, хүснэгт, индекстэй ажиллах, хандалтын эрх, хуулбарыг тохируулах, мэдээллийг экспортлох, нөөцлөх/сэргээх, статистик харах гэх мэт ихэнх үйлдлүүдийг ойлгомжтой орчинд гүйцэтгэх боломжийг олгодог. Үүний зэрэгцээ ямар ч SQL асуулга шууд оруулах боломжтой хэвээр байна. Олон серверийн менежментийг дэмждэг. Бүх зүйл маш ойлгомжтой бөгөөд хэрэглэгч ямар ч тусгай сургалтгүйгээр хөтөчтэй ямар ч төхөөрөмжөөс удирдлагыг удирдах боломжтой. Интернет дээр олон заавар, жишээ байдаг phpMyAdmin ашиглан. Багцын сангаас суулгах нь ямар ч асуудал үүсгэхгүй, та зөвхөн Apache-г вэб сервер болгон ашиглахаас гадна илүү хөнгөн nginx эсвэл lighttpd ашиглаж болно. cPanel болон Plesk зэрэг зарим хостинг хянах самбарууд phpMyAdmin-ийг дэмждэг.

MySQL, MS SQL болон PostgreSQL (туршилтын хэвээр байгаа) болон Нээлттэй эхийн лицензийн дагуу түгээгддэг HeidiSQL-ийг Windows хэрэглэгчид талархах нь гарцаагүй. Хөтөлбөр нь маш тохиромжтой интерфэйстэй, нэг цонхонд байдаг хэд хэдэн серверүүдтэй нэг дор холболтыг дэмждэг бөгөөд энэ нь өгөгдлийг экспортлох/импортлох үйл ажиллагааг хялбаршуулдаг. Та мэдээллийн сан, хүснэгт үүсгэх, засварлах, давуу эрх удирдах, хүснэгтүүдийг экспортлох (CSV, HTML, XML, SQL, ...), хайх, оновчтой болгох, хянах боломжтой. Автомат бөглөх нь асуулга бичихэд тусалдаг. Тушаалын мөрийг дэмждэг, SSH туннелээр холбогдох боломжтой. Wine ашигладаг зөөврийн хувилбар байгаа бөгөөд үүнийг *nix / OS X дээр ажиллуулах боломжтой.

Тайлбарласан бүтээгдэхүүнд сэтгэл хангалуун бус байгаа хүмүүсийн хувьд та тэдгээрийг Интернетээс олж болно. их тооаналогууд: SQLyog, MySQL-д зориулсан dbForge Studio, TOra, SQL Buddy болон бусад.

Хяналтын хэрэгслүүд

Аливаа програмын нэгэн адил DBMS нь үйл ажиллагааныхаа байнгын хяналтыг шаарддаг тул асуудал гарсан тохиолдолд саад бэрхшээлийг амархан олох боломжтой. Ерөнхий мэдээлэлТа стандарт mysqladmin клиент ашиглан MySQL хэрхэн ажилладаг талаар мэдээлэл авах боломжтой. SHOW QUERY LOG, SHOW PROCCESSLIST, SHOW VARIABLE, SHOW GLOBAL STATUS гэх мэт асуулга нь тодорхой дүр зургийг өгөх нь ховор, учир нь үргэлж удаан асуулга байдаг боловч тэдгээр нь үйлчилгээний ажилд нөлөөлөх албагүй. Мөн slow.log өгөгдөлд дүн шинжилгээ хийж, хамгийн их удаашралтай асуулгыг харуулдаг mysqldumpslow хэмээх хэрэгсэл байдаг.

Enterprise хэвлэл нь MySQL-ийн бүх мэдээллийн сангийн бодит цагийн гүйцэтгэл, бэлэн байдлын мэдээллийг өгдөг тусгай MySQL Enterprise Monitor хэрэгслийг санал болгодог. Нэмж дурдахад, Нээлттэй эхийн Nagios, Cacti, Zabbix, Ganglia зэрэг ихэнх хяналтын системд зориулсан тусгай залгаасууд байдаг. Жишээлбэл, Нагиос. Нэвтрэхийн тулд залгаас бүрийг зөв тохируулсан байх ёстой дэлгэрэнгүй мэдээлэл MySQL-д юу болдог талаар, энэ нь ихэвчлэн туршлага шаарддаг. Даалгавар нь зөвхөн DBMS-ийг хянах үед бүрэн хэмжээний хяналтын системийг ашиглах нь үргэлж оновчтой байдаггүй. Энэ тохиолдолд тусгай хэрэгсэл аврах ажилд ирдэг.

Харамсалтай нь маш алдартай митопыг хоёр жил гаруй хугацаанд боловсруулаагүй байна (хэдийгээр энэ нь үүнийг ашиглах боломжгүй гэсэн үг биш юм), гэхдээ энэ нь маш сайн, илүү ажиллагаатай орлуулалттай. MySQL-ийн 3.23.41 хувилбараас эхлэн InnoDB нь энэ DBMS-д зориулсан Unix top-ийн нэг төрлийн аналог болох InnoDB Monitor innotop-ийг агуулдаг. Innotop нь InnoDB-ийн дотоод төлөвийн талаарх мэдээллийг тохиромжтой хэлбэрээр харуулдаг бөгөөд энэ нь гүйцэтгэлийг тохируулахад хэрэг болно. Хэрэгслийг эхлүүлэх олон сонголт байдаг. Хамгийн энгийн нь ямар ч параметргүйгээр тодорхой хэрэглэгчээр ажиллах явдал юм

$ innotop -u root -p нууц үг

Анхдагч байдлаар, холболт хийгдсэн байна локал сервер, гэхдээ та дурын зангилаа зааж өгөх эсвэл хэд хэдэн серверийг нэгэн зэрэг хянах боломжтой. Асуулт товчийг дарснаар бүх командын жагсаалтыг (Shift + товчлуур) авах боломжтой. Жишээлбэл, одоо байгаа бүх хүсэлтийн жагсаалтыг харуулах болно. --write параметр нь холболтын өгөгдлийг .innotop/innotop.conf файлд хадгалах боломжийг олгодог:

$innotop --бичих

Эдгээр хэрэгслүүдийн цорын ганц таагүй зүйл бол мэдээллийг бодит цаг хугацаанд харуулдаг тул та статистикийн мэдээллийг хадгалах, дараа нь дүн шинжилгээ хийхэд өөрөө анхаарах хэрэгтэй.

2009 онд гарч ирсэн mycheckpoint төсөл нь хэдэн жилийн турш MySQL-ийг хянах стандарт хэрэглүүр болсон. Түүний алдартай болсон шалтгаан нь өвөрмөц арга барил юм. Хадгалалт, асуулгын хувьд мэдээллийн баазыг ашигладаг бөгөөд үүнд (нэг INSERT үйлдэл) мониторингийн хэмжигдэхүүн, статистик болон MySQL хувьсагч, Линукс үйлдлийн системийн талаарх мэдээлэл (RAM болон солилцооны төлөв, ачаалал гэх мэт) цуглуулдаг. Хэрэглэгчийн хүсэлтийн үр дүнг мөн мэдээллийн санд оруулсан болно. Цуглуулсан мэдээллийг энгийн SELECT асуулга ашиглан хялбархан харж болно. Үүний зэрэгцээ администратор нь шууд үүсгэсэн визуал диаграм (Google Chart API дээр суурилсан), тайлан, хэмжигдэхүүнийг хүлээн авдаг. Та HTML тайланг гаргахдаа өөрийн вэб серверийг ашиглаж болно. Имэйлээр илгээсэн сэрэмжлүүлгийг мөн тохируулах боломжтой. Алсын систем болон олон серверүүдийг хянах боломжтой.

Энэ нь Python дээр бичигдсэн тул суулгахад хэцүү биш юм. Хөгжүүлэгчид deb, rpm, tar.gz багц, түүхий эдийг санал болгодог. Ubuntu дээр та дараах тушаалуудыг оруулах ёстой.

$ sudo apt-get суулгах python-mysqldb $ sudo dpkg -i mycheckpoint-231-1.deb

Дараа нь та мэдээллийг хадгалах мэдээллийн сан үүсгэх хэрэгтэй болно:

$ mysql -uroot -ppassword mysql> CREATE DATA BASE mycheckpoint;

mysql> mycheckpoint ДЭЭР БҮХ ЭРХ ЭРХИЙГ ОЛГОХ.* "Нууц үг"-ээр тодорхойлогддог "user"@"localhost"-д;

Мэдээлэл цуглуулах, харуулахын тулд mycheckpoint хэрэглүүрийг ашигладаг бөгөөд үүнийг гараар эсвэл cron-ээр ажиллуулж болно. MySQL болон SMTP сервертэй холбогдох параметрүүдийг тушаалын мөрөнд мөн зааж өгсөн болно.

$ mycheckpoint --user=user --password=нууц үг --host=server --port=3306

Эсвэл тохиргооны файлд бичсэн (анхдагчаар /etc/mycheckpoint.cnf):

*/5 * * * * mycheckpoint --defaults-file=/root/mycheckpoint.cnf

Одоо бид цуглуулсан мэдээллийг харж, SQL асуулга ашиглан тайлан гаргах боломжтой.

$ mysql mycheckpoint -e "SV_report_html_brief-с html SELECT" --silent --raw > ./checkpoint_report.html

MySQL сервер болон клиент програмын хооронд өгөгдлийн солилцоог хянах, дүн шинжилгээ хийх, шаардлагатай бол өөрчлөх боломжийг олгодог өөр нэг хэрэгтэй хэрэгсэл бол MySQL Proxy юм. Хөтөлбөрт маш том боломжууд бий. Windows болон *nix системүүдийн аль алинд нь ажилладаг. Суулгах нь ямар ч асуудал үүсгэхгүй; тохиргоонд MySQL порт (анхдагч 3306) болон PHP (php.ini дахь mysql.default_port мөр) -ийг зааж өгөх шаардлагатай. Бүх хүсэлтийг Луа хэл дээр гаргадаг тул баримт бичиг нь энд сайн тус болно.

Аливаа програм хангамжийн бүтээгдэхүүний үйл ажиллагаатай холбоотой асуудлуудын нэг бол түүний асуудал юм буруу тохиргоо. Суулгасны дараа нэмэлт демо гарч ирнэ дансууд, тестийн мэдээллийн сангууд, хэрэглэгчид өөрсдөө тохируулж болно энгийн нууц үг, тэдгээрийг авахад хялбар байдаг. Эдгээр асуудлуудыг зөвхөн байнгын аудитаар шийдэж болох бөгөөд хэрэв нууц/хувийн мэдээллийг боловсруулж байгаа бол энэ нь заавал байх болно ( зээлийн картууд, эмнэлгийн бүртгэл гэх мэт). Осол гэмтлийг судлах, алдааг олж засварлахдаа аюулгүй байдлын стандартад (SOX, HIPAA гэх мэт) нийцсэн орчинг бүрдүүлэх шаардлагатай. Суулгасны дараа та аюулгүй байдлын ерөнхий тохиргоог тохируулах боломжийг олгодог mysql_secure_installation-г ашиглах ёстой.

Дараа нь та доор тайлбарласан хэрэгслүүд болон скриптүүдийг ашиглах хэрэгтэй. MySQL хөгжүүлэгчид тохирох API-г санал болгосноор аудитын ажлыг хялбаршуулсан болно. Гэсэн хэдий ч, MySQL дээр audit_log залгаасыг зөвхөн Enterprise хувилбарт ашиглах боломжтой. Percona Server хөгжүүлэгчид энэ модулийн өөр GPL хувилбарыг санал болгодог бөгөөд энэ нь MySQL болон клонуудыг шалгахад тохиромжтой. Өөр хоёр хувилбар болох McAfee MySQL Audit Plugin болон MySQL-д зориулсан MariaDB Audit Plugin нь мөн энэ ажлыг гүйцэтгэдэг бөгөөд танд MariaDB, MySQL болон Percona серверийг аудит хийх боломжийг олгодог боловч тэдгээрийг ашиглах боломжтой. өөрийн форматстандарт MySQL-ээс ялгаатай аудитын бүртгэл. Энэ нь бага зэрэг илүү анхны тохиргоо хийх шаардлагатай болно. Plugin-ийн хэрэглээг энгийн гэж нэрлэх боломжгүй бөгөөд баримт бичигт дэлгэрэнгүй тусгагдсан тул та унших шаардлагатай хэвээр байгаа тул бид энэ талаар ярихгүй.

Нэмж дурдахад Патрик Карлссон тестийн багцыг танилцуулж байна сүлжээний сканнер Nmap нь серверийнхээ аюулгүй байдлын үндсэн асуудлуудыг шалгах боломжийг олгодог. Ubuntu-д суулгасны дараа тохиргоог /usr/share/nmap/nselib/data болон nmap/скрипт санд хадгалдаг бөгөөд серверийг шалгахын тулд та холболтын параметрүүд болон бүртгэлийг зааж өгөх ёстой.

$ nmap -p 3306 1.1.1.1 --script mysql-audit --script-args "mysql-audit.filename="/usr/share/nmap/nselib/data/mysql-cis.audit" ,mysql-audit.username ="root",mysql- audit.password="нууц үг""

Хакер үүнийг ямар ч тохиолдолд ашиглах тул администратор ийм байдлаар серверүүдийг үе үе шалгаж байх үүрэгтэй. Тус тусад нь хэлэлцэх ёстой хоёр багц нь аудитын хэрэгслийг агуулдаг.

MySQL-д зориулсан Percona Toolkit

MySQL-д дагалддаг стандарт хэрэгслүүд нь зөвхөн удирдлагын үндсэн чадамжийг хангадаг бөгөөд үүний үр дүнд олон үйлдлийг гараар гүйцэтгэх ёстой. Энэ нь асуудал байж болох юм, учир нь бүх зүйлийг хянах нь маш хэцүү байдаг бөгөөд ихэвчлэн туршлага шаарддаг, алдаа гаргахад хялбар байдаг. MySQL багцад зориулсан Percona Toolkit нь Maatkit болон Aspersa гэсэн хоёр төслийн ажлыг хослуулсан бөгөөд репликацын статусыг шалгах, мэдээлэл цуглуулах, асуулга оновчтой болгох, серверийг тохируулах, өгөгдлийг архивлах/сэргээх болон илүү их. Нийтдээ 4000 гаруй тест, тохиргоо байдаг. Энэхүү багцыг Линуксийн томоохон түгээлтүүдэд ашиглах боломжтой (Ubuntu дээр, percona-toolkit багц). Суулгасны дараа бид нэр нь pt-* гэж эхэлдэг 32 хэрэгслийг авдаг бөгөөд зорилго нь ихэвчлэн нэрнээс тодорхой байдаг. Эхлэх үед та янз бүрийн шүүлтүүрүүдийг тохируулж, гаралтыг форматлаж болно. Тиймээс, хэрэгсэл бүр олон тооны параметртэй байдаг тул та баримт бичгийг унших хэрэгтэй болно. Жишээлбэл, pt-summary скрипт нь /proc/cpuinfo, /proc/meminfo, mount, df болон бусад хэрэгслүүдээр цуглуулсан сервер дээрх бүх мэдээллийг харуулах бөгөөд pt-show-grants нь DBMS хэрэглэгчийн бүх эрхийг, pt-query- digest нь хүсэлтийн серверийн боловсруулсан бүртгэлийн дүн шинжилгээ, түүнчлэн processlist болон tcpdump-аас цуглуулсан мэдээлэлд үндэслэн тайлан гаргах боломжийг танд олгоно. Жишээлбэл, үзэх удаан асуулгахоёр аргаар:

$ pt-query-digest slow.log $ pt-query-digest --user=user --password=password --processlist --host=example.org

Өөр нэг алдартай багц болох openark иж бүрдэл нь DBMS-ийг турших боломжийг олгодог 14 хэрэгслийг санал болгодог: тохиргоог шалгах, нууц үгээ шалгах (хоосон, ижил, сул), бүртгэлийг хаах, асуулга тасалдуулах, бүртгэлийн оруулгуудыг шүүх, хуулбарлах төлөвийг харуулах, зөв ​​кодчилол хийх гэх мэт. BSD лицензийн дагуу тараагдсан. Python хэл дээр бичигдсэн бөгөөд python-mysqldb шаардлагатай. Деб ба rpm багц, түүхий эдийг суурилуулахад санал болгож буй процесс нь стандарт бөгөөд ямар ч асуудал үүсгэдэггүй;

Хамгийн алдартай скрипт бол данс, нууц үг, эрх болон бусад серверийн тохиргоонд үе үе аудит хийх зориулалттай oak-security-audit kit юм. Ерөнхийдөө үүнийг параметргүйгээр ажиллуулж болно. Анхдагч байдлаар, хамгийн дээд системийн аудитын түвшний горимыг ашигладаг (--audit-level=strict-тэй тохирч байна):

$ oak-security-audit --socket=/var/run/mysqld/mysqld.sock --user=user --password=password

Үүний үр дүнд бид "Өнгөрсөн" гэж тэмдэглэгдээгүй бүх зүйлд анхаарал хандуулдаг. Анхдагч байдлаар, openark иж бүрдэлийн хэрэгслүүд (үүнд ижил хөгжүүлэгчийн дээр дурдсан mycheckpoint орно) DBMS-тэй холбогдохын тулд /var/run/mysqld/mysql.sock залгуурыг ашигладаг (энэ нь өөрөө скриптэд суурилагдсан), in Ubuntu файл mysqld.sock гэж нэрлэдэг. Зам бүрийг зааж өгөхгүйн тулд та холболтын тохиргоо бүхий урьдчилан бэлтгэсэн файлыг ашиглаж, -defaults-file ашиглан зааж өгч болно. Эсвэл: my.cnf дээр MySQL тохиргоог өөрчлөх. Скриптийг засварлах нь тохиромжгүй, учир нь шинэчлэлтийн явцад тэдгээр нь ажиллахгүй болно. Дараагийн скрипт болох oak-block-account нь DBMS-д хандах хандалтыг түр хаах зориулалттай төрөл бүрийн хосттеруудын дунд маш их алдартай. Баримт нь стандарт DBMS механизм нь дансыг түр идэвхгүй болгохыг зөвшөөрдөггүй (REVOKE login ON гэх мэт). . ), өөрөөр хэлбэл, хэрэв бүртгэл байгаа бол хэрэглэгч үргэлж мэдээллийн сантай холбогдож болно. Та мэдээж ийм зүйлийг ашиглаж болно

Mysql> "ХЭРЭГЛЭГЧ"@"%"-аас БҮХ ЭРХ ЭРХ ЭРХИЙГ ХҮЧИН АВАХ, СОНГОЛТ ОЛГОХ;

гэхдээ эрх сэргээгдсэн бол та бүх тохиргоог санах хэрэгтэй болно. Мөн хамгийн чухал нь, хэрэв та ашиглах эрхийг харвал

Mysql> "ХЭРЭГЛЭГЧ"-д ЗОРИУЛСАН ТЭТГЭЛЭГЛЭЛИЙГ ХАРУУЛАХ;

НУУЦ ҮГЭЭР ТАНИЛЦСАН "ХЭРЭГЛЭГЧ"@"%"-д *.* ДЭЭР ХЭРЭГЛЭЭГ ОЛГОНО .....

Бид ийм тушаал нь USAGE-г дахин тохируулахгүй байгаа эсэхийг шалгах болно. ХЭРЭГЛЭЭНИЙГ ХҮЧИРХИЙЛЭХ гэдэг нь үнэндээ ХЭРЭГЛЭГЧИЙГ УНТАХ гэсэн үг. Хэрэглэгчийн нэр, нууц үгээ өөрчлөх нь илүү хялбар боловч сэргээхэд асуудал гарч болзошгүй. Ер нь шуугиан тарьж, эрсдэл ихтэй. Oak-block-account ашиглах үед данс өөрчлөгдөөгүй хэвээр байх бөгөөд түүнд түр зуурын нууц үг өгөгдсөн тул та энэ бүртгэлтэй холбогдох боломжгүй.

$ oak-block-account --block --account-user=USER --account-host=example.org Нэмэлт --kill параметр нь бүх зүйлийг нэг дор дахин тохируулах боломжийг олгоноидэвхтэй холболтууд

. Бүртгэлийнхээ ажиллагааг сэргээх нь бас амархан. Дансны жагсаалт болон тэдгээрийн статусыг харцгаая:

$ oak-block-account --list

Мөн бүртгэлийг идэвхжүүлнэ үү:

$ oak-block-account --release --account-user=USER --account-host=example.org Openark багцын бусад скриптүүд нь зарим үйлдлийг хялбарчлах боломжийг танд олгоно. Жишээлбэл, oak-chunk-update нь даалгаврыг жижиг хэсгүүдэд хуваах замаар урт блоклохгүйгээр том UPDATE/DELETE үйлдлүүдийг хийх боломжтой болгодог. Oak-show-replication-status скрипт нь хуулбарлах төлөвийг харуулдаг, oak-kill-slow-queries нь аль хэдийн ажиллаж байгаа асуулгыг устгадаг.удаан хугацаагаар

, oak-repeat-query нь тодорхой нөхцөл (давталтын тоо, хугацаа) хүрэх хүртэл хайлтыг гүйцэтгэдэг.

Тохиргоог оновчтой болгох нь маш нарийн үйл явц юм, учир нь цуглуулсан статистик дээр үндэслэн та зөвхөн гүйцэтгэлд үнэхээр нөлөөлөх зүйлийг л өөрчлөх хэрэгтэй. MySQL-ийн хамгийн алдартай хэрэгсэл бол Perl скрипт MySQLTuner бөгөөд ихэнх Linux түгээлтийн репозиторуудад байдаг. Энэ нь одоогийн серверийн тохиргоо болон MySQL суулгацуудыг уншиж, дараа нь тэдгээрийг өөрчлөх зөвлөмж (зөвхөн зөвлөмж) гаргадаг. Хэрэв суулгацыг багц ашиглан хийсэн бол скриптийн нэрийг оруулна уу, эс тэгвээс орчуулагчийг зааж өгөх хэрэгтэй.

$ perl mysqltuner.pl

Дараа нь администраторын нэвтрэлт болон нууц үгийг хүсэх бөгөөд үүний дараа бид системийн хэмжүүр, зөвлөмжийг хүлээн авах болно. Нэмж дурдахад MySQLTuner нь серверийн хурдад нөлөөлдөг хүснэгт, хуваагдлын талаархи мэдээллийг харуулдаг. Шаардлагатай бол бид индексүүдийг дахин зохион байгуулах, дефрагментаци хийх зөвлөмжийг хүлээн авах болно. Илүү нарийвчлалтай ажиллахын тулд дор хаяж нэг өдрийн турш ажилласны дараа скриптийг ажиллуулахыг зөвлөж байна.

Анхны скриптийг *nix дор бичсэн боловч Win-д тохирсон хувилбарыг CodePlex дээр авах боломжтой. Өөр нэг хувилбар бол MySQL Performance Tuning Primer Script бөгөөд ийм харааны мэдээллийг өгдөггүй, гэхдээ асуудлын талаар илүү "яридаг" байдаг.

Дүгнэлт

Эдгээр нь мэдээжийн хэрэг мэдээллийн сангийн администраторын гарт байх ёстой бүх хэрэгсэл биш юм. Гэхдээ энэ нь судлах ёстой хамгийн бага хэмжээ байж магадгүй юм. Нэмж дурдахад, та танилцах тусам MySQL-д хамаарах механизмуудын талаар илүү ихийг ойлгож эхэлдэг.

Серверийн ачааллыг хянах MySQLнэг байна сайн хэрэглүүрмитоп.
Митоп бол нээлттэй хэрэгсэл MySQL-ийн гүйцэтгэлийг хянах командын мөрийн хэрэгсэл бөгөөд дээд гэж нэрлэгддэг Линукс системийн хяналтын хэрэглүүрийн загвараар хийгдсэн. Mytop нь MySQL-тэй холбогдож, харуулах процессын жагсаалтыг үе үе ажиллуулж, глобал статусын командуудыг үзүүлж, дараа нь мэдээллийг хэрэгтэй хэлбэрээр нэгтгэн дүгнэдэг. Mytop-ийн тусламжтайгаар та MySQL урсгал, асуулга, ажиллах хугацааг бодит цаг хугацаанд хянах, аль хэрэглэгч тодорхой мэдээллийн сан руу асуулга илгээж байгааг олж мэдэх, удаашралтай асуултуудыг тодорхойлох гэх мэт олон зүйлийг хийх боломжтой. Энэ бүх мэдээллийг гүйцэтгэлийг оновчтой болгоход ашиглаж болно MySQL сервер.

Суурилуулалт өөр өөр системүүд:

# apt-get суулгах mytop

# yum mytop суулгах

#pkg mytop суулгана

Манайд холбогдоно уу MySQL:

# mysql -u root -p Нууц үгээ оруулна уу:

Өгөгдлийн сан бүрийн хувьд эсвэл өөр өөр програмуудөөр өөр данс үүсгэх. Тиймээс бид mytopuser хэрэглэгчдэд шаардлагатай мэдээллийн сангийн эрхийг үүсгэж, тайлбарлах болно.

Mysql> "нууц үг"-ээр тодорхойлогдсон "mytopuser"@"localhost" хэрэглэгч үүсгэх; mysql> бүгдийг нь *.* дээр 'mytopuser'@'localhost'-д 'нууц үг'-ээр тодорхойлсон;

Гэрийн лавлахдаа тохиргооны файл үүсгэ ~/.mytopболон түүнд холболтын тохиргоог оруулна уу:

# mcedit .mytop хэрэглэгч=mytopuser pass=dgbple хост=localhost db=одны порт=3306 өнгө=1 саатал=3 сул зогсолт=0

Энд хэрэглэгч болон нэвтрэх үг нь бидний үүсгэсэн нэвтрэх болон нууц үг юм.

хост, порт – MySQL серверийн хаяг, порт

db - бидний холбогдох мэдээллийн сан

саатал – mytop дэлгэцийг 3 секунд тутамд шинэчлэх

сул - хүлээгдэж буй хэлхээг mytop руу гаргах эсэхийг тодорхойлно. Анхдагч байдлаар, ийм урсгалыг харгалзан үздэг. Хүлээгдэж буй хэлхээг орхисноор mytop нь үндсэн эрэмбэ дарааллыг өөрчилдөг бөгөөд жагсаалтын эхэнд урт асуултуудыг байрлуулдаг.

Энэ файлд хандах эрхийг өөрчилье:

# chmod 700 .mytop

Хэрэгслийг ажиллуулна уу:

#mytop

Та тодорхой мэдээллийн сангийн өгөгдлийг харуулах боломжтой, жишээлбэл:

# mytop -u mytopuser -p нууц үг -d goip

Эхний мөрөнд: хостын нэр болон ажиллаж байгаа серверийн хувилбар MySQL. Баруун дээд буланд серверийн ажиллах хугацаа (тасралтгүй ажиллах хугацаа) хоног+цаг+минут+секунд байна.

Хоёр дахь мөрөнд: өгөгдлийн сангийн боловсруулсан асуулгын нийт тоо (Queries:), секундэд илгээсэн асуулгын дундаж тоо (qps:), удаан асуулгын тоо (Удаан:).

Гурав дахь мөрөнд процессуудын талаархи мэдээллийг харуулав: нийт, идэвхтэй, кэш.

Дөрөв дэх мөрөнд: гол буферийн үр дүнтэй байдлын талаархи мэдээлэл - хэр олон удаа MySQLдиск рүү орохгүйгээр буфер дэх түлхүүрүүдийг олдог, серверээс илгээсэн болон хүлээн авсан дундаж байт, одоо илгээгдэж буй байтуудын тоог олдог.

Дэлгэцийн хоёр дахь хэсэг нь бүх идэвхтэй хэлхээг (хэрэглэж буйг оруулаад) харуулдаг MyTOP). Энэ нь хэрэглэгчийн нэр, өгөгдлийн сангийн нэр, зангилааны нэр, түүнчлэн одоогийн хүсэлт, статусыг хүснэгт хэлбэрээр харуулна.

Mytop-ийн стандарт гаралтад асуулга нь богиноссон байдаг. Нийтлэлийг бүхэлд нь үзэхийн тулд товшино уу Ф. Хөтөлбөр нь дараахь зүйлийг асуух болно.

Аль хэлхээний ID-ийн бүрэн асуулга:

Шаардлагатай хүсэлтийг харахын тулд хэлхээний ID-г оруулна уу.

Хүсэлтийн тайлбарыг авах бол товшино уу Э, дараа нь програм нь ажиллаж байгаа асуулгын талаархи мэдээллийг өгөх бөгөөд энэ нь асуулга оновчтой болж байгаа эсэхийг тодорхойлоход тусална. EXPLAIN бол MySQL асуулгыг ойлгох, оновчтой болгох хамгийн хүчирхэг хэрэгслүүдийн нэг юм.

Энэ горимоос гарахын тулд дурын товчлуурыг дарна уу; стандарт гаралт руу буцахын тулд товшино уу т.

C товчийг дарснаар mytop-ийн өөр нэг хэрэгтэй харагдах боломжтой. Энэ нь ажиллаж байгаа командуудыг харуулдаг.

Тушаал багана нь ажиллуулсан тушаал эсвэл асуулгын төрлийг харуулдаг. Нийт баганад сервер ажиллаж эхэлснээс хойшхи энэ төрлийн командуудын нийт тоог, Pct нь энэ тоог хувиар харуулна. Сүүлчийн баганад энэ төрлийн командын тоог харуулна сүүлийн шинэчлэлмитоп. Ерөнхийдөө энэ өгөгдөл нь богино болон урт хугацаанд MySQL серверийн гүйцэтгэлийн талаархи санааг өгдөг.

Дүгнэлт

Энэхүү хэрэгсэл нь нарийн төвөгтэй SQL асуулгыг цаг тухайд нь илрүүлж, оновчтой болгох боломжийг олгодог бөгөөд ингэснээр серверийн ерөнхий гүйцэтгэлийг нэмэгдүүлдэг.

Mytop бол дээд тушаалтай төстэй боловч MySQL-г хянах зориулалттай командын мөрийн хэрэгсэл юм. MySQL-ийн 3.22 буюу түүнээс хойшхи хувилбарыг шаарддаг. Одоогийн MySQL 5.x хувилбарыг бас дэмждэг. Mytop ихэнх дээр ажилладаг Линукс системүүд. Энэ нийтлэлд бид Ubuntu-г үндэс болгон ашиглах болно. Ажиллахын тулд танд Perl, DBI болон Term::ReadKey суулгасан байх шаардлагатай. Term::ANSIColor-ийн тусламжтайгаар та хүссэн өнгийг гаргаж болно. 0.7 хувилбар нь Windows дээр бас ажилладаг.

Суурилуулалт

Суулгахын өмнө та өмнөх догол мөрөнд заасан бүх програмыг суулгах ёстой. Mytop-ийг дараах байдлаар суулгасан.

Debian: apt-get суулгах mytop Ubuntu: sudo apt-get суулгах mytop

Эсвэл та tar бөмбөгийг татаж аваад суулгаж болно:

Tar -zxvf mytop-x.x.x.tar.gz (Таны хувилбарын дугаар)
cd mytop-x.x.x. (Таны хувилбарын дугаар)
perl Makefile.PL
хийх
тест хийх
суулгац хийх

Өгөгдлийг задлах, суулгацыг дуусгахын тулд дээрх тушаалуудыг гүйцээнэ үү. CentOS болон RedHat хэрэглэгчид rpmforge репозиторыг татаж авах шаардлагатай болно автомат суурилуулалтэсвэл та гараар суулгах аргыг ашиглаж болно.

Mytop ашиглаж байна

Суулгасны дараа mytop ашиглах руу шилжье:

Mytop --prompt (нууц үг асуухыг тохируулаад, нууц үгээ баталгаажуулахын тулд enter дарна уу)

Энэ бол стандарт арга бөгөөд та нууц үгээ дараах байдлаар тохируулж болно.

Mytop -u root -p (хэрэглэгч нь "root" учраас энд mysql нууц үгийг ашиглах ёстой)

Хэрэв "root: NO PASS" эсвэл үүнтэй төстэй алдаа гарвал дараахыг оруулна уу:

Mytop -u root -p xxxx ("xxxx"-ийн оронд манай нууц үгийг оруулна уу)

Эдгээр командыг ашиглахын өмнө та MySQL сервер ажиллаж байгаа эсэхийг шалгах хэрэгтэй.

Шалгасны дараа enter дарна уу.

Localhost дээрх MySQL (5.0.8) 0+00:32:51 (11:20:10) хүртэл
Асуулт: 19.0 qps: 0 Удаан: 0.0 Se/In/Up/De(%): 00/00/00/00
Qps одоо: 0 удаашруулах: 0.0 Сэдвүүд: 1 (1/ 0) 00/00/00/00
Гол үр ашиг: 100% Bps оролт/гаралт: 7.3/907.3 Одоо орох/гаралт: 8.4/1.3к
ID хэрэглэгчийн хост/IP DB цаг Cmd асуулга эсвэл төлөв
2 root localhost test 0 Query бүрэн процессыг харуулна

Эхний мөрөнд серверийн нэр (localhost) болон манай систем дээр ажиллаж байгаа MySQL-ийн хувилбарыг харуулна. Цөмийн цэнхэр өнгөөр ​​тодруулсан мөр нь MySQ серверийн ажиллах горимд ажиллах хугацааг зааж, тэмдэглэгээний формат нь хоног+цаг:минут:секунд, мөн одоогийн системийн цагийг зааж өгсөн болно.

Хоёрдахь мөрөнд систем ажиллаж эхэлснээс хойшхи хүсэлтийн тоог заана.

Гурав дахь мөрөнд хэлхээний тоог харуулна.

Зургийн хоёр дахь хэсэг нь MySQL-ийн боловсруулж буй хэлхээний тоог харуулж байна. Урсгалуудыг эхний ээлжинд хамгийн бага сул зогсолттой байх хугацаанд нь эрэмбэлдэг.

Зарим параметрүүдийг mytop ашиглан алгасаж болно:

U эсвэл хэрэглэгчийн нэр: Ихэвчлэн mytop-д бүртгүүлэх үед хэрэглэгчийн нэрийг тодорхойлоход ашигладаг. Анхдагч нь "root" юм.

P эсвэл нэвтрэх буюу нууц үгийн нууц үг: Хэрэглэгчийг зөвшөөрөхөд ашигладаг нууц үгнүүд нь анхдагч нууц үгийг тохируулаагүй тул нууц үгийн талбарыг хоосон орхиж болно.

H эсвэл host hostname[:port]: Хэрэв MySQL стандарт порт ашигладаггүй бол портуудыг тодорхойлох. Анхдагч нь 3306.

S эсвэл -delay секунд: Шинэчлэх хугацааны интервалыг заана. Анхдагч нь 5.

Бусад mytop параметрүүдийг харахын тулд дараахыг оруулна уу:

Хүн митоп

Энэ хүн митопын талаар маш их мэдээлэл агуулдаг.

Өгөгдөлдөө хандах, хянах зорилгоор үүсгэсэн тохиргооны файлыг харцгаая:

User=root #Хэрэглэгчийн нэрийг зааж өгнө.
pass= #Нууц үг тохируулна уу.
хост=localhost #hostname.
db=test #өгөгдлийн сангийн нэр.
саатал=5 #хяналтын гаралтын өгөгдлийг шинэчлэх хугацаа.
port=3306 #port mytop дээр ашиглах.
socket= #хэрэв та ямар нэгэн сокетийг тодорхойлсон бол mytop нь портын дугаар болон хостын нэрийг үл тоомсорлох бөгөөд хэрэв танд хэрэггүй бол энэ мөрийг устгаж болно.
batchmode=0 #MySQL-д боловсруулсан асуулгын нарийн тоог өгнө.
header=1 #Толгойг харуулахыг хүсвэл тохируулна уу. Mytop-г ажиллуулах үед h товчлуураар харагдана.
Өнгө=1 #Өөр өөр өнгө ашиглахыг хүсвэл тохируулна уу (зөвхөн танд дэмжигдсэн өнгө байгаа тохиолдолд).
idle=1 #процессын жагсаалтад идэвхгүй процессуудыг харуулах.

Тохиргооны файлыг дараах байдлаар үүсгэнэ.

Mcedit ~/.mytop файлыг үндсэн хавтсанд үүсгэх бөгөөд та ямар ч засварлагч ашиглаж болно

Бусад mytop сонголтуудыг харахын тулд: гэж бичнэ үү, энэ нь mytop-д хэрэглэгддэг товчлолын жагсаалтыг бүхэлд нь харуулах болно.

© 2024 ermake.ru -- Компьютер засварын тухай - Мэдээллийн портал