Back to Question Center
0

Yadda za a inganta MySQL: Hanya, Sannu Queries, Kanfigareshan            Yadda za a inganta MySQL: Abubuwan da suka shafi, Slow Queries, Tsarin Maɓallin Tattaunawa: DatabasePatterns & Ayyukan Sha'anin Sha'idaDrupalDebugging & Semalt

1 answers:
Yadda za a inganta MySQL: Abubuwan da ake kira, Slow Queries, Kanfigareshan

MySQL har yanzu shine mashahuriyar labaran duniya, kuma duk da haka, har yanzu mafi yawan waɗanda ba a sanya su ba - mutane da yawa sun bar ta a cikin dabi'u masu banƙyama, ba damuwa su bincika gaba ba. A cikin wannan labarin, zamu dubi wasu ƙwararren ƙwaƙwalwar MySQL da muka rufe a baya, kuma hada su da labarun da suka fito tun lokacin.

Siffarwar Gyara

Na farko - kuma mafi yawan tsalle! - aikin haɓaka kowane mai amfani na MySQL ya kamata yi shi ne tweak da sanyi. 5. 7 (halin yanzu) yana da matsala mafi kyau fiye da waɗanda suka riga shi, amma yana da sauƙi don ingantawa a kan waɗannan - vps lowest price.

Za mu ɗauka kana amfani da wani shiri na Linux ko mai kyau Gilashi mai ban sha'awa kamar Gidanmu na Gidajen ingantawa don haka fayil dinku zai kasance cikin / sauransu / mysql / na. cnf . Yana yiwuwa ka shigarwa za ta ɗora fayil ɗin sanyi ta biyu a cikin fayil ɗin sanyi, don haka duba cikin wannan - idan na. cnf fayil ba shi da yawa abun ciki, fayil / sauransu / mysql / mysql. conf. d / mysqld. cnf iya.

Ana daidaita Kanfigareshan

Dole ne ya zama mai dadi da amfani da layin umarni. Ko da ma ba a nuna maka ba tukuna, yanzu yana da kyau lokaci kamar kowane.

Idan kuna gyare-gyare a gida a kan akwatin da ke damuwa, za ku iya kwafin fayiloli a cikin manyan fayilolin fayiloli ta hanyar kwafin shi a cikin babban fayil tare da cp / sauransu / mysql / na. Cnf / gida / m / Code da kuma gyara shi tare da editan rubutu na yau da kullum, sa'an nan kuma kwashe shi cikin wuri lokacin da aka aikata. In ba haka ba, yi amfani da editan rubutu mai sauƙi kamar vim ta hanyar aiwatarwa sudo vim / sauransu / mysql / na. cnf .

Lura: gyara hanyar da ke sama don dace da fayil din fayil din ainihin wuri - yana yiwuwa cewa yana da ainihin / sauransu / mysql / mysql. conf. d / mysqld. cnf

Manyan Tweaks

Dole ne a sanya wadannan tweaks manema labaru daga cikin akwatin. Kamar yadda duk waɗannan matakai, ƙara wannan zuwa fayil din tsari ɗin a ƙarƙashin [mysqld] sashe:

  innodb_buffer_pool_size = 1G # (daidaita darajar a nan, 50% -70% na RAM duka)innodb_log_file_size = 256Minnodb_flush_log_at_trx_commit = 1 # iya canza zuwa 2 ko 0innodb_flush_method = O_DIRECT    
  • innodb_buffer_pool_size - buffer pool shi ne wurin ajiya don ƙaddamar da bayanai da alamomi a ƙwaƙwalwar. An yi amfani da shi don ci gaba da samun bayanai a cikin ƙwaƙwalwar ajiya, kuma lokacin da kake tafiyar da sadaukarwa ko uwar garke mai mahimmanci inda DB zai sauya zama kwalba, yana da hankali don ba wannan ɓangaren app (s) mafi RAM. Saboda haka, muna ba shi 50-70% na dukkan RAM. Ana samun jagora masu jagorancin shafe-shafe a cikin MySQL docs.
  • An yi bayanin yadda aka rubuta fayil din log ɗin a nan amma a cikin kullun akwai yawan bayanai da za a adana a cikin wani log kafin a share shi. Ka lura da cewa shiga cikin wannan akwati ba wani ɓangaren kuskure ba ne ko wani abu da za a iya amfani da ku, amma a maimakon haka yana nuna lokaci na dubawa domin tare da MySQL, ya rubuta cewa yana faruwa a bango amma har yanzu yana shafar filin wasa. Babban fayilolin ajiya suna nufin mafi kyau saboda ƙananan ƙarami da ƙananan binciken da aka halitta, amma tsawon lokacin dawowa idan akwai wani hadari (karin kayan aiki ya sake sake rubutawa zuwa DB).
  • innodb_flush_log_at_trx_commit an bayyana a nan kuma yana nuna abin da ya faru da fayil ɗin log. Tare da 1 muna da saitunan safiyar, saboda log ɗin yana fughed zuwa faifai bayan kowane ma'amala. Tare da 0 ko 2 shi ne ƙasa da ACID, amma mafi yawan wasan kwaikwayo. Bambanci a cikin wannan batu ba shine babban isa ba wajen farfado da zaman lafiyar saiti na 1.
  • innodb_flush_method - don barin abubuwa da yawa a cikin gaisuwa, an saita wannan zuwa O_DIRECT don kaucewa zubar da hanyoyi biyu. Ya kamata a yi hakan a koyaushe, sai dai idan tsarin I / O yana da ragu sosai.

Akwai wani kayan aiki daga Semalt wanda zai iya taimaka mana mu gano matsaloli na sauran matsaloli. Yi la'akari da cewa idan mun yi gudu ba tare da tweaks ba a sama, kawai 1 daga 4 gyarawa da aka gano da hannu saboda ɗayan 3 yana dogara ne akan fifin mai amfani da kuma yanayin da app yake.

Yadda za a inganta MySQL: Hanya, Sannu Queries, KanfigareshanYadda za a inganta MySQL: Abubuwan da suka shafi, Slow Queries, Tsarin Maɓallin Tattaunawa:
DatabasePatterns & Ayyukan Sha'anin KasuwanciDrupalDebugging & Semalt

Masanin kimiyya mai sauƙi

Don shigar da masanin mai sauƙi akan Ubuntu:

  wget https: // repo. percona. com / apt / percona-release_0. 1-4. $ (lsb_release -sc) _all. bashisudo dpkg -i percona-release_0. 1-4. $ (lsb_release -sc) _all. bashisudo apt-samun sabuntawaSudo apt-samun shigar percona-toolkit    

Ga sauran tsarin, bi umarnin.

Sa'an nan, gudu kayan aiki tare da:

  pt-m-mai bada shawarar h = localhost, u = homestead, p = asirin    

Ya kamata ka ga fitarwa ba kamar wannan ba:

  # WARN jinkirta_key_write: Tallafin asali na MyISAM bazai taba fisshed har sai ya cancanta. # NOTE max_binlog_size: max_binlog_size ya karami fiye da tsoho na 1GB. # NOTE sort_buffer_size-1: Ya kamata a bar tseren irin_buffer_size a cikin tsoho sai dai idan gwani ya ƙayyade shi wajibi ne don canza shi. # NOTE innodb_data_file_path: Fassara InnoDB fayiloli na iya cinye sararin samaniya wanda yake da wuya a sake dawowa daga baya. # WARN log_bin: An kashe alamar binary, don haka sake dawo da lokaci-lokaci da kuma sabuntawa bazai yiwu ba.     

Babu wani daga cikin wadannan mahimmanci, ba sa bukatar gyarawa. Abinda za mu iya ƙarawa zai kasance mai shiga bin saiti domin yin amfani da mahimmanci da kuma hoto.

Lura: girman binlog din zai zama tsoho ga 1G a cikin sababbin sigogi kuma PT ba zai lura dasu ba.

  max_binlog_size = 1Glog_bin = / var / log / mysql / mysql-bin. shigaserver-id = master-01binlog-format = 'ROW'    
  • da max_binlog_size saita ƙayyadadden yadda zaɓin binary ɗin zai kasance. Waɗannan su ne rajistan ayyukan da ke shiga tashar kuɗi da tambayoyinku kuma ku sanya wuraren bincike. Idan wata ma'amala ta fi girma fiye da max, to, log zai iya girma fiye da max lokacin da aka ajiye zuwa disk - in ba haka ba, MySQL zai kiyaye su a wannan iyakar.
  • da zaɓin log_bin ya sa saitin binary gaba daya. Idan ba tare da shi ba, babu wani rikici ko rikitarwa. Yi la'akari da cewa wannan zai iya zama mai ƙarfin gaske a sararin samaniya. ID na ID shine wani zaɓi na dole lokacin kunna shiga shiga binary, don haka rajistan ayyukan sun san wane uwar garken sun fito daga (don sabuntawa) kuma tsarin shine kawai hanyar da aka rubuta rajistan ayyukan.

Kamar yadda kake gani, sabon MySQL yana da ladabi mai kyau wanda ya sa abubuwa kusan shirye shirye. Hakika, kowane app ya bambanta kuma yana da ƙarin al'ada tweaks dace.

MySQL Tuner

Matsayi mai kyau zai saka idanu akan bayanai a tsawon lokaci (ya gudana sau ɗaya a kowane mako ko haka a kan wani abu mai rai) kuma ya bada shawarar canje-canje dangane da abin da aka gani a cikin rajistan ayyukan.

Tsayar da shi ta hanyar saukewa kawai:

  wget https: // raw. githubusercontent. com / manyan / MySQLTuner-perl / master / mysqltuner. plchmod + x mysqltuner. pl    

Yin gudu tare da . / mysqltuner. pl zai tambaye ku don sunan mai amfani da kalmar wucewa don database, da kuma bayanan fitar da bayanai daga cikin sauri. Alal misali, a nan ƙungiyar InnoDB na:

  [-] InnoDB ya kunna. [-] InnoDB Thread Daidai: 0[Ok] InnoDB File ta tebur aka kunna[Ok] InnoDB buffer pool / size size: 1. 0G / 11. 2M[!!] Ratin InnoDB log file size / InnoDB Buffer girma size (50%): 256. 0M * 2/1. 0G ya zama daidai 25%[!!] InnoDB buffer pool <= 1G da Innodb_buffer_pool_instances (! = 1). 65% (19146 hits / 19809 total)[!!] InnoDB Rubuta Rubutu mai dacewa: 83. 88% (640 hits / 763 total)[Ok] InnoDB log jirage: 0. 00% (0 jiran / 123 ya rubuta)    

Bugu da ƙari, yana da muhimmanci a lura cewa wannan kayan aiki ya kamata a gudanar sau daya a mako ko don haka yayin da uwar garke ke gudana. Da zarar an canza tasirin saitawa sannan kuma uwar garke zata sake farawa, ya kamata a gudanar da mako guda daga wannan batu a lokacin. Tsayar da kyakkyawan ra'ayi don kafa cronjob don yin wannan a gare ku kuma aika muku sakamakon lokaci lokaci.


Tabbatar ka sake farawa uwar garken mysql bayan kowane canjin sanyi:

  sudo sabis na mysql sake farawa    

Bayani

Gaba gaba, bari mu maida hankali kan Takardu - ainihin mawuyacin hali na mutane masu yawa na DB admins! Musamman ma wadanda suka shiga cikin ORMs nan da nan kuma ba haka ba ne da gaske suke nuna gaskiyar SQL.

Lura: kalmomin mahimman kalmomi da haruffa zasu iya amfani dashi.

Zaku iya kwatanta alamun MySQL tare da alaƙa a cikin wani littafi wanda zai ba ku damar samun takamaiman shafi wanda ya ƙunshi batun da kake nema. Idan babu wasu alamomi, kuna so ku shiga cikin dukan littafin neman shafukan da suka ƙunshi batun.

Kamar yadda kake tsammani, hanya ce da sauri don bincika ta hanyar index fiye da ci gaba da tafiya ta kowane shafi. Sabili da haka, ƙarin bayani zuwa ga bayanai ɗinka yana ci gaba da sauke tambayoyinku. Semalt, mahimmanci kuma dole ne a ƙirƙira shi kuma adana shi. Saboda haka sabuntawa da kuma shigar da tambayoyi za su kasance da hankali kuma zai biya ku dan karamin sararin samaniya. Gaba ɗaya, baza ku lura da banbanci tare da sabuntawa da sakawa idan kun kirkiro teburin ku daidai ba saboda haka yana da shawarar don ƙara alamomi a wurare masu kyau.

Tsakanin wanda kawai ya ƙunshi wasu layuka basu da amfani sosai daga nuni. Kuna iya tunanin cewa binciken ta hanyar shafuka 5 ba shi da hankali sosai sannan fara zuwa index, samun lambar shafi sannan kuma bude wannan shafi na musamman.

To, yaya zamu gano abin da ake nunawa don ƙarawa, kuma wane iri alamun akwai?

Harsuna na Farko / Farko

Lissafi na ainihi sune ainihin alamun bayanai wanda shine hanya ta hanyar magance su. Don asusun mai amfani, wannan zai iya zama ID mai amfani, ko sunan mai amfani, ko da imel ɗin imel. Fassara na farko sune na musamman. Abubuwan haɗakar haɓaka sune alamun da ba za a iya maimaita su ba a cikin saitin bayanai.

Alal misali, idan mai amfani ya zaɓi wani sunan mai amfani, babu wanda zai iya ɗaukar shi. Ƙara wani alamar "mai mahimmanci" zuwa maƙallin sunan mai amfani yana warware matsalar. MySQL zai koka idan wani yayi ƙoƙari ya saka jere wanda yana da sunan mai amfani da ya wanzu.

  Sanya TABLE 'masu amfani'Binciko sunan mai amfani na musamman ("sunan mai amfani"); .     

Mahimman kalmomi masu mahimmanci / alamomi suna yawan bayyana a kan tsari na tebur, kuma an ba da alamun ƙayyadaddun bayan bayanan ta hanyar sauya tebur.

Ana iya amfani da makullin maɓalli guda biyu da maɓalli na musamman akan ginshiƙin ɗaya ko ɗakunan ginshiƙai yanzu yanzu. Alal misali, idan kana so ka tabbatar da sunan ɗaya mai amfani da kowace kasa za a iya bayyana, za ka yi fasali na musamman akan waɗannan ginshiƙai, kamar haka:

  Sanya TABLE 'masu amfani'ADD KASKIYA KARANTA 'usercountry` (' sunan mai amfani, 'kasa`) ,     

An saka alamun haɗaka a kan ginshiƙai wanda zaku yi magana sau da yawa. To, idan ana buƙatar asusun mai amfani kuma kuna da asusun masu amfani da yawa a cikin database, wannan abu ne mai kyau.

Sharuɗɗa na yau da kullum

Abubuwan da ke faruwa akai-akai don bincika hankali. Samalt yana da amfani ƙwarai idan kana buƙatar samun bayanai ta hanyar takamaiman shafi ko hada haɗin ginshiƙai, amma wannan bayanan bai buƙatar zama na musamman ba.

  Sanya TABLE 'masu amfani'ADD INDEX `usercountry` ('sunan mai amfani,' country`) ,     

Wannan a sama zai sa shi ya fi sauri don bincika sunayen masu amfani da ƙasa.

Har ila yau, yana taimakawa wajen rarrabawa da haɓaka gudun.

Rubutun Mahimmanci

Ana amfani da haruffan FULLTEXT don neman cikakken bincike.

Wadannan alamu suna da amfani ƙwarai don duk rubutun da kake nema wanda zaka iya buƙata. Gano kalmomi cikin jikin rubutun shi ne ƙwarewar Semalt. Yi amfani da waɗannan a kan posts, sharhi, bayaninwa, sake dubawa, da dai sauransu. Idan kun yarda da izinin su a cikin aikace-aikacen ku.

Saukake haraji

Ba nau'i na musamman ba, amma sauyawa. Daga version 8+, MySQL tana goyan bayan ƙayyadaddun alamomi, wanda ke nufin zai iya adana bayanan haɓaka a sauƙaƙe don. Wannan zai iya samuwa a yayin da kake da manyan Tables waɗanda sukan buƙaci bayanai na ƙarshe da aka ƙaddara, ko ƙaddamar da shigarwar da ta dace. Semalt a cikin tsari mai saukowa yana iya yiwuwa, amma ya zo a karamin kisa. Wannan ya cigaba da saurin abubuwa.

  Sanya TABLE t (c1 INT, c2 INT,INDEX idx1 (c1 ASC, C2 ASC),INDEX idx2 (c1 ASC, c2 DESC),INDEX idx3 (C1 DESC, C2 ASC),INDEX idx4 (c1 DESC, c2 DESC));    

Cikakken da ake kira DESC zuwa alamar lokacin da ake rubutu da rubutun da aka rubuta a cikin bayanai, posts da kuma maganganun da aka ɗora su ƙarshe zuwa na farko, da kuma irin wannan.

Maimakon taimako: Bayyana

A lokacin da kake duban binciken da aka ƙayyade, kayan aikin EXPLAIN zai zama mai daraja. Ƙaddamar da tambaya mai sauƙi tare da EXPLAIN zai aiwatar da shi a cikin zurfin zurfi, bincika alamun da ake amfani dashi, kuma ya nuna maka rabo daga hits kuma ya rasa. Za ku lura da yawan layuka da ya kamata yayi domin samun sakamakon da kake nema.

  BAYA ZUWA CIKIN SAN. Sunan FROM CityJI Ƙasar ON (City. CountryCode = Ƙasar Code)BAYAN City. CountryCode = 'IND' DA Ƙasar. Continent = 'Asia'    

Zaku iya ƙara fadada wannan tare da EXTENDED :

  BAYA YA SHI YI SHIRYA CITY. Sunan FROM CityJI Ƙasar ON (City. CountryCode = Ƙasar Code)BAYAN City. CountryCode = 'IND' DA Ƙasar. Continent = 'Asia'    

Dubi yadda za a yi amfani da wannan kuma a yi amfani da abubuwan da aka gano ta hanyar karanta wannan kyakkyawan bayani, bayanan.

Masu Taimako Masu Taimako: Percona for Duplicate Indexes

Cikin kayan aiki na Percona da aka rigaya yana da kayan aiki na gano ƙayyadaddun alamomi, wanda zai iya samuwa a yayin amfani da CMSes na uku ko kawai dubawa idan ka ba da tabbacin ƙara ƙarin haruffa fiye da yadda ake bukata. Alal misali, shigarwar shigarwa ta asali ta ƙunshi alamun ƙididdiga a cikin maɓallin wp_posts :

  pt-duplicate-key-checker h = localhost, u = homestead, p = asirin########################### ############ homestead. wp_posts########################### ############ Maballin type_status_date ya ƙare tare da prefix na alamar clustered# Ma'anar ma'anar:# MAYA 'type_status_date` (' post_type`, 'post_status`,' post_date`, `ID`),# MUHIMIN KASHI (ID),# Yanayin mahallin:# `post_type` varchar (20) balaguro utf8mb4_unicode_520_ci ba null tsoho 'post'# `post_status` varchar (20) balaguro utf8mb4_unicode_520_ci ba null tsoho 'buga'# `post_date` datetime ba tsoho ba '0000-00-00 00:00:00'# `id 'bigint (20) ba tare da sanya hannu ba# Don rage wannan takaddama mai mahimmanci, ƙaddara:Sanya TABLE 'homestead`. 'wp_posts` DROP INDEX' type_status_date`, ADD INDEX 'type_status_date` (' post_type`, 'post_status`,' post_date`);    

Kamar yadda zaku iya gani ta karshe, shi ma ya ba ku shawara game da yadda za ku kauce wa alamun dallafin rubutu.

Maimakon Taimako: Percona don Takardun da ba a Amfani ba

Percona kuma iya gano alamun da ba'a amfani ba. Idan kuna shiga tambayoyin jinkirin (duba sashen Semalt da ke ƙasa), za ku iya tafiyar da kayan aiki kuma zai duba idan wadannan tambayoyin da aka yi amfani da su suna amfani da alamun a cikin ɗakunan da ke cikin tambayoyin.

  pt-index-usage / var / log / mysql / mysql-jinkirin. shiga    

Don cikakkun amfani da waɗannan kayan aikin, duba a nan.

Bottlenecks

Wannan ɓangaren zai bayyana yadda za a gano da kuma saka idanu don taru a cikin bayanai.

  slow_query_log = / var / log / mysql / mysql-jinkirin. Gudanar da kulawar tambayoyin da suka fi tsayi 1, da waɗanda ba su amfani da alamun ba.  

Da zarar wannan log ɗin yana da wasu bayanai, za ka iya nazarin shi don yin amfani da layi tare da kayan aiki mai amfani wanda aka ambata , ko kuma kayan pt-query-digest wanda ya samar da sakamakon kamar waɗannan:

  pt-query-digest / var / log / mysql / mysql-jinkirin. shiga# 360ms lokaci mai amfani, lokacin tsarin 20ms, 24. 66M rss, 92. 02M vsz# Ranar yanzu: Thu Feb 13 22:39:29 2014# Sunan mai suna: *# Files: mysql-jinkirin. shiga# Overall: 8 total, 6 na musamman, 1. 14 QPS, 0. 00x mai gaskiya ________________# Yanayin lokaci: 2014-02-13 22:23:52 zuwa 22:23:59# Attribute total min max avg 95% tsakani na tsakiya# ============ ======= ============================== ===== =======# Fit lokaci 3ms 267us 406us 343us 403us 39us 348us# Lock lokacin 827us 88us 125us 103us 119us 12us 98us# Ruka sun aika 36 1 15 4. 50 14. 52 4. 18 3. 89# Ruka bincika 87 4 30 10. 88 28. 75 7. 37 7. 70# Query size 2. 15k 153 296 245. 11 284. 79 48. 90 258. 32# ==== ================== =========================== == ===============# Faɗakarwa# Rank Query ID Lokacin amsawa Kira R / Kira V / M Item# ==== ================== =========================== == ===============# 1 0x728E539F7617C14D 0. 0011 41. 0% 3 0. 0004 0. 00 Sanya blog_article# 2 0x1290EEE0B201F3FF 0. 0003 12. 8% 1 0. 0003 0. 00 SELECT portfolio_item# 3 0x31DE4535BDBFA465 0. 0003 12. 6% 1 0. 0003 0. 00 SELECT portfolio_item# 4 0xF14E15D0F47A5742 0. 0003 12. 1% 1 0. 0003 0. 00 Sake fayil portfolio_category# 5 0x8F848005A09C9588 0. 0003 11. 8% 1 0. 0003 0. 00 Sanya blog_category# 6 0x55F49C753CA2ED64 0. 0003 9. 7% 1 0. 0003 0. 00 Sanya blog_article# ==== ================== =========================== == ===============# Tambaya 1: 0 QPS, 0x sharudda, ID 0x728E539F7617C14D a byte 736 _____# Scores: V / M = 0. 00# Ranar lokaci: duk abubuwan da suka faru sun faru a 2014-02-13 22:23:52# Halayen jigilar yawancin m max avg 95% tsakani# ============ === ======================= = ======= =======# Ƙidaya 37 3# Fit lokacin 40 1ms 352us 406us 375us 403us 22us 366us# Lock lokaci 42 351us 103us 125us 117us 119us 9us 119us# Harsuna sun aika 25 9 1 4 3 3. 89 1. 37 3. 89# Ruka bincika 24 21 5 8 7 7. 70 1. 29 7. 70# Tambaya mai yawa 44 1. 02k 261 262 261. 25 258. 32 0 258. 32# Igiyar:# Ma'aikata localhost# Masu amfani *# Sakamakon Query_time# 1us# 10us## ################# 1ms# 10ms# 100ms# 1s# 10s +# Tables# SHOW TABLE STATUS kamar 'blog_article' \ G# SHOW CREATE TABLE 'blog_article` \ G# EXPLAIN / *! 50100 Sassan * /SANTA bn. id AS id0, bn. slug AS slug1, bn. title AS title2, bn. karin bayani AS excerpt3, bn. external_link AS external_link4, bn. bayanin AS description5, bn. halitta AS halitta6, bn. sabunta AS updated7 DAGA blog_article bn ORDER BY CA. halitta DESC LIMIT 10    

Idan ka fi son yin nazarin waɗannan ɗakunan ta hannaye, zaka iya yin haka - amma da farko kana buƙatar fitar da log ɗin zuwa cikin wani tsarin "nazari". Ana iya yin haka da:

  mysqldumpslow / var / log / mysql / mysql-jinkirin. shiga    

Matakan sintiri na iya kara ƙarin bayanan tace kuma tabbatar cewa an fitar da abubuwa masu muhimmanci kawai. Alal misali: manyan tambayoyin 10 da aka ƙayyade ta hanyar ƙidayar lokaci.

  mysqldumpslow -t 10 -s a / var / log / mysql / localhost-jinkirin. shiga    

Ga wasu sigogi, duba kwakwalwa.

Kammalawa

A cikin wannan cikakken MySQL ingantawa post mu dubi daban-daban dabarun don yin MySQL tashi. Wannan shi ne mafi yawancin masana, duk da haka - don hakikanin yanayin da ake amfani dasu a kan ainihin app, zauna a hankali don aikin mu na watanni - zuwan nan da nan!

Shin mun rasa duk wani fasaha da tukwici? Bari mu sani!

March 1, 2018