ºÝºÝߣ

ºÝºÝߣShare a Scribd company logo
MYSQL
    §±§â§à§Ô§â§Ñ§Þ§Ú§ã§ä §¿.§¯§Ñ§ã§Ñ§ß§Ø§Ñ§â§Ô§Ñ§Ý
MySQL §ä§å§ç§Ñ§Û
? 1995 §à§ß§í 5 §ã§Ñ§â§Õ §Ñ§ß§ç §Ù§Ñ§ç §Ù§ï§ï§Ý§Õ §Ô§Ñ§â§ã§Ñ§ß
? C / C++
? §·?§Ô§Ø??§Ý§ï§Ô§é §ß§î MySQL AB
? Facebook, Google, Wikipedia ¡­
MySQL versions
MySQL versions
MySQL query §Ò§Ú§é§Ú§ç§ï§Õ
§Ñ§ß§ç§Ñ§Ñ§â§Ñ§ç §Ù?§Û§Ý§ã
? §´?§Ô§ï§ï§Þ§ï§Ý §Ñ§Ý§Õ§Ñ§Ñ§ß§å§å§Õ
  ? Limit §Ñ§ê§Ú§Ô§Ý§Ñ§ç
  ? §°§Ý§à§ß §Õ§Ñ§Ó§ç§Ñ§â Join §Ñ§ê§Ú§Ô§Ý§Ñ§ã§Ñ§ß ?§Ö§Õ §Ò?§ç §Ò§Ñ§Ô§Ñ§ß§í§Ô Select §ç§Ú§Û§ç
    SELECT * FROM sakila.actor
       INNER JOIN salila.film_actor USING (actor_id)
       INNER JOIN salila.film USING (film_id)
      WHERE sakila.film.title = 'Academy Dinosaur';
MySQL query §Ò§Ú§é§Ú§ç§ï§Õ
§Ñ§ß§ç§Ñ§Ñ§â§Ñ§ç §Ù?§Û§Ý§ã
 ? §¢?§ç §Ò§Ñ§Ô§Ñ§ß§í§Ô Select §ç§Ú§Û§ç        SELECT *
             ? Count(*) => Count(column_name)

 ? Unique row
   SELECT 1 FROM user WHERE state = 'Alabama' LIMIT 1

 ? Order by RAND()
 ? ENUM §Ú§Û§Ô §ä§à§Ô§ä§Þ§à§Ý §ä§ï§Þ§Õ§ï§Ô§ä§ä§ï§Û v§Ö§Õ VARCHAR
Join Decomposition
? SELECT * FROM tag
 JOIN tag_post ON tag_post.tag_id=tag.id
 JOIN post ON tag_post.post_id=post.id
 WHERE tag.tag='mysql';

? SELECT * FROM tag WHERE tag='mysql';
 SELECT * FROM tag_post WHERE tag_id=1234;
 SELECT * FROM post WHERE post.id in
 (123,456,567,9098,8904);
§·§ï§â§Ó§ï§ï Join §Ú§Û§Ô §Ú§Ý?? §ç§å§â§Õ§Ñ§ß, §Ñ§ê§Ú§Ô§ä§Ñ§Û
§Ñ§Ø§Ý§å§å§Ý§ì§ñ §Ô§ï§Ó§ï§Ý
? Query Cache §Ñ§ê§Ú§Ô§Ý§Ñ§ç
? MyISAM engine ¨C §ä§Ñ§Û §ç?§ã§ß§ï§Ô§ä §Ñ§ê§Ú§Ô§Ý§Ñ§ç
? §°§Ý§à§ß §ã§Ö§â§Ó§Ö§â §Ñ§ê§Ú§Ô§Ý§Ñ§ç
? Join §Ú§Û§Ô In() §ã§à§Ý§Ú§ç ¨C   §´§à§Þ §ç§ï§Þ§Ø§ï§ï§ä§ï§Û §ç?§ã§ß§ï§Ô§ä§ï§ß§Õ
Unbuffered query
? mysql_connect("localhost", "php", "alm65z");
   mysql_select_db("phpdb");
   $result = mysql_unbuffered_query("SELECT ID,
 Name FROM conferences;");
    $result = mysql_query("SELECT ID, Name FROM
 conferences;");
   while ($row = mysql_fetch_assoc($result)) {
      extract($row, EXTR_PREFIX_ALL, "conf");
      print "$conf_Namen";
   }
Chopping up a Query
Mysql> DELETE FROM messages WHERE created <
                          DATE_SUB(NOW(),INTERVAL
 3 month)
rows_affected = 0
do{
rows_affected = do_query(

  DELETE FROM messages WHERE created <
    DATE_SUB(NOW(),INTERVAL 3 month) LIMIT 10000
  )
} while rows_affected > 0
Query Cache
// query cache does NOT work
$r = mysql_query("SELECT username FROM user
   WHERE signup_date >= CURDATE()");

// query cache works!
$today = date("Y-m-d");
$r = mysql_query("SELECT username FROM user
   WHERE signup_date >= '$today'");
Index the Search Fields
Mysql> Select count(1) From users Where last_name Like
 ¡®a%¡¯; 0.25

Mysql> Alter table ¡®users¡¯ Add index(¡®last_name¡¯);

Mysql> Select count(1) From users Where last_name Like
 ¡®a%¡¯; 0.06
Count == 63285
Index use for Join

SELECT company_name FROM users
  LEFT JOIN companies ON (users.state = companies.state)
  WHERE users.id = 15
 users.state - §Ú§ß§Õ§Ö§Ü§ã§Ý§ï§Ô§Õ§ã§ï§ß §Ò§Ñ§Ô§Ñ§ß§Ñ
Procedure Analyse
(max_element, max_memory)
 ? SELECT quantity, sale_order_id
  FROM `sale_order_queue`
  PROCEDURE ANALYSE ( 1000000, 256 )
IP Addresses as Unsigned int
 UPDATE users SET ip = INET_ATON
 ('{$_SERVER['REMOTE_ADDR']}') WHERE user_id =15
 192.168.1.100
 INET_NTOA() , ip2long() , long2ip()
Partition
 ? CREATE TABLE ti (id INT, amount DECIMAL(7,2), tr_date DATE)
  ENGINE=INNODB PARTITION BY HASH( MONTH(tr_date) )
  PARTITIONS 6;

 ? Partition type
   ? Hash
   ? Range
   ? List
   ? Key
Range
Hash
Key
List
Partition §Ñ§ê§Ú§Ô§Ý§Ñ§ç
  ? CREATE TABLE ts1 (
  ?      c1 INT,
  ?      c2 VARCHAR(20)
  ? )
  ? PARTITION BY LIST(c1) (
  ?      PARTITION p0 VALUES IN (0, 3, 6),
  ?      PARTITION p1 VALUES IN (1, 4, 7),
  ?      PARTITION p2 VALUES IN (2, 5, 8)
  ? );
  ? INSERT INTO ts1 VALUES (8, 'mothra');
  ?
               c1              c2
               8               mothra
§¡§ß§ç§Ñ§Ñ§â§Ñ§Ý §ä§Ñ§Ó§î§ã§Ñ§ß§Õ
    §¢§Ñ§ñ§â§Ý§Ñ§Ý§Ñ§Ñ
Ad

More Related Content

What's hot (20)

Simple crudlazarus
Simple crudlazarusSimple crudlazarus
Simple crudlazarus
gopartheredbuff
?
Testov¨¢n¨ª prakticky
Testov¨¢n¨ª praktickyTestov¨¢n¨ª prakticky
Testov¨¢n¨ª prakticky
Filip Proch¨¢zka
?
Oop koncepti
Oop konceptiOop koncepti
Oop koncepti
PrelovacMedia
?
Documentacion edderson callpa_ortiz
Documentacion edderson callpa_ortizDocumentacion edderson callpa_ortiz
Documentacion edderson callpa_ortiz
Edderson J. Ortiz
?
Simular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentariaSimular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentaria
jbersosa
?
Feeds. §Ú§ã§á§à§Ý§î§Ù§à§Ó§Ñ§ß§Ú§Ö §Ú §ã§à§Ù§Õ§Ñ§ß§Ú§Ö §á§Ý§Ñ§Ô§Ú§ß§à§Ó. Feeds API
Feeds. §Ú§ã§á§à§Ý§î§Ù§à§Ó§Ñ§ß§Ú§Ö §Ú §ã§à§Ù§Õ§Ñ§ß§Ú§Ö §á§Ý§Ñ§Ô§Ú§ß§à§Ó. Feeds APIFeeds. §Ú§ã§á§à§Ý§î§Ù§à§Ó§Ñ§ß§Ú§Ö §Ú §ã§à§Ù§Õ§Ñ§ß§Ú§Ö §á§Ý§Ñ§Ô§Ú§ß§à§Ó. Feeds API
Feeds. §Ú§ã§á§à§Ý§î§Ù§à§Ó§Ñ§ß§Ú§Ö §Ú §ã§à§Ù§Õ§Ñ§ß§Ú§Ö §á§Ý§Ñ§Ô§Ú§ß§à§Ó. Feeds API
Alex S
?
Assalamualaykum warahmatullahi wabarakatuu
Assalamualaykum warahmatullahi wabarakatuuAssalamualaykum warahmatullahi wabarakatuu
Assalamualaykum warahmatullahi wabarakatuu
iswan_di
?
Func
FuncFunc
Func
Hvqr
?
§À§ß§Ú§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§Ö §Ó Zend Framework 2.0
§À§ß§Ú§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§Ö §Ó Zend Framework 2.0§À§ß§Ú§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§Ö §Ó Zend Framework 2.0
§À§ß§Ú§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§Ö §Ó Zend Framework 2.0
zfconfua
?
¥¢¥×¥êÉ趨¤Î±£´æ¤ò¥·¥ó¥×¥ë¤Ë
¥¢¥×¥êÉ趨¤Î±£´æ¤ò¥·¥ó¥×¥ë¤Ë¥¢¥×¥êÉ趨¤Î±£´æ¤ò¥·¥ó¥×¥ë¤Ë
¥¢¥×¥êÉ趨¤Î±£´æ¤ò¥·¥ó¥×¥ë¤Ë
susan335
?
Sumahexavector
SumahexavectorSumahexavector
Sumahexavector
jbersosa
?
Clase 10 electiva profesional 3 aws rds php y mysql
Clase 10 electiva profesional 3 aws rds php y mysqlClase 10 electiva profesional 3 aws rds php y mysql
Clase 10 electiva profesional 3 aws rds php y mysql
Richard Eliseo Mendoza Gafaro
?
Php codigos interfaces fredy guzman cusihunca
Php codigos interfaces   fredy guzman cusihuncaPhp codigos interfaces   fredy guzman cusihunca
Php codigos interfaces fredy guzman cusihunca
Tigger_Fred
?
Jsoon
JsoonJsoon
Jsoon
iqbalfatoni01
?
??? JPA ??(Spring Data JPA ?? ??)
??? JPA ??(Spring Data JPA ?? ??)??? JPA ??(Spring Data JPA ?? ??)
??? JPA ??(Spring Data JPA ?? ??)
?????(????????3??? 2???)
?
Drupal 8. Movement towards. Susikov Sergey
Drupal 8. Movement towards. Susikov SergeyDrupal 8. Movement towards. Susikov Sergey
Drupal 8. Movement towards. Susikov Sergey
ADCI Solutions
?
Sumahex
SumahexSumahex
Sumahex
jbersosa
?
Documentacion edderson callpa_ortiz
Documentacion edderson callpa_ortizDocumentacion edderson callpa_ortiz
Documentacion edderson callpa_ortiz
Edderson J. Ortiz
?
Simular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentariaSimular un next del recordset en php de forma rudimentaria
Simular un next del recordset en php de forma rudimentaria
jbersosa
?
Feeds. §Ú§ã§á§à§Ý§î§Ù§à§Ó§Ñ§ß§Ú§Ö §Ú §ã§à§Ù§Õ§Ñ§ß§Ú§Ö §á§Ý§Ñ§Ô§Ú§ß§à§Ó. Feeds API
Feeds. §Ú§ã§á§à§Ý§î§Ù§à§Ó§Ñ§ß§Ú§Ö §Ú §ã§à§Ù§Õ§Ñ§ß§Ú§Ö §á§Ý§Ñ§Ô§Ú§ß§à§Ó. Feeds APIFeeds. §Ú§ã§á§à§Ý§î§Ù§à§Ó§Ñ§ß§Ú§Ö §Ú §ã§à§Ù§Õ§Ñ§ß§Ú§Ö §á§Ý§Ñ§Ô§Ú§ß§à§Ó. Feeds API
Feeds. §Ú§ã§á§à§Ý§î§Ù§à§Ó§Ñ§ß§Ú§Ö §Ú §ã§à§Ù§Õ§Ñ§ß§Ú§Ö §á§Ý§Ñ§Ô§Ú§ß§à§Ó. Feeds API
Alex S
?
Assalamualaykum warahmatullahi wabarakatuu
Assalamualaykum warahmatullahi wabarakatuuAssalamualaykum warahmatullahi wabarakatuu
Assalamualaykum warahmatullahi wabarakatuu
iswan_di
?
§À§ß§Ú§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§Ö §Ó Zend Framework 2.0
§À§ß§Ú§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§Ö §Ó Zend Framework 2.0§À§ß§Ú§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§Ö §Ó Zend Framework 2.0
§À§ß§Ú§ä §ä§Ö§ã§ä§Ú§â§à§Ó§Ñ§ß§Ú§Ö §Ó Zend Framework 2.0
zfconfua
?
¥¢¥×¥êÉ趨¤Î±£´æ¤ò¥·¥ó¥×¥ë¤Ë
¥¢¥×¥êÉ趨¤Î±£´æ¤ò¥·¥ó¥×¥ë¤Ë¥¢¥×¥êÉ趨¤Î±£´æ¤ò¥·¥ó¥×¥ë¤Ë
¥¢¥×¥êÉ趨¤Î±£´æ¤ò¥·¥ó¥×¥ë¤Ë
susan335
?
Sumahexavector
SumahexavectorSumahexavector
Sumahexavector
jbersosa
?
Php codigos interfaces fredy guzman cusihunca
Php codigos interfaces   fredy guzman cusihuncaPhp codigos interfaces   fredy guzman cusihunca
Php codigos interfaces fredy guzman cusihunca
Tigger_Fred
?
Drupal 8. Movement towards. Susikov Sergey
Drupal 8. Movement towards. Susikov SergeyDrupal 8. Movement towards. Susikov Sergey
Drupal 8. Movement towards. Susikov Sergey
ADCI Solutions
?

Viewers also liked (20)

Day 1
Day 1Day 1
Day 1
ETC
?
HTML5
HTML5HTML5
HTML5
Singleton
?
§©§Ñ§ã§Ñ§Ô.§Þ§ß - §´?§â§Ú§Û§ß §è§Ñ§ç§Ú§Þ §ç§Ñ§Ñ§Ý§Ô§Ñ
§©§Ñ§ã§Ñ§Ô.§Þ§ß - §´?§â§Ú§Û§ß §è§Ñ§ç§Ú§Þ §ç§Ñ§Ñ§Ý§Ô§Ñ§©§Ñ§ã§Ñ§Ô.§Þ§ß - §´?§â§Ú§Û§ß §è§Ñ§ç§Ú§Þ §ç§Ñ§Ñ§Ý§Ô§Ñ
§©§Ñ§ã§Ñ§Ô.§Þ§ß - §´?§â§Ú§Û§ß §è§Ñ§ç§Ú§Þ §ç§Ñ§Ñ§Ý§Ô§Ñ
Singleton
?
NodeJS
NodeJS NodeJS
NodeJS
Singleton
?
Coaching
CoachingCoaching
Coaching
Singleton
?
CSS3
CSS3CSS3
CSS3
Singleton
?
Java script x§ï§â§ï§Ô§Ý§ï§ï
Java script x§ï§â§ï§Ô§Ý§ï§ï Java script x§ï§â§ï§Ô§Ý§ï§ï
Java script x§ï§â§ï§Ô§Ý§ï§ï
Singleton
?
Computer arch
Computer archComputer arch
Computer arch
budkhand_2
?
Day 3 php working with string, number
Day 3   php working with string, numberDay 3   php working with string, number
Day 3 php working with string, number
ETC
?
NoSQL ?§Ô?§Ô§Õ§Ý§Ú§Û§ß §ã§Ñ§ß. MongoDB
NoSQL ?§Ô?§Ô§Õ§Ý§Ú§Û§ß §ã§Ñ§ß. MongoDBNoSQL ?§Ô?§Ô§Õ§Ý§Ú§Û§ß §ã§Ñ§ß. MongoDB
NoSQL ?§Ô?§Ô§Õ§Ý§Ú§Û§ß §ã§Ñ§ß. MongoDB
Battushig Namsraidorj
?
§³?§Ý§Ø§ï§ï
§³?§Ý§Ø§ï§ï§³?§Ý§Ø§ï§ï
§³?§Ý§Ø§ï§ï
solongoooo
?
My sql lec2
My sql lec2My sql lec2
My sql lec2
ETC
?
Day 4 php working with date and time, array
Day 4   php working with date and time, arrayDay 4   php working with date and time, array
Day 4 php working with date and time, array
ETC
?
User account policy
User account policyUser account policy
User account policy
Muuluu
?
§­§Ö§Ü§è 5
§­§Ö§Ü§è 5§­§Ö§Ü§è 5
§­§Ö§Ü§è 5
Muuluu
?
C++ vndsen oilgolt §ç§Ú§é§ï§ï§Ý 1
C++ vndsen oilgolt §ç§Ú§é§ï§ï§Ý 1C++ vndsen oilgolt §ç§Ú§é§ï§ï§Ý 1
C++ vndsen oilgolt §ç§Ú§é§ï§ï§Ý 1
Urantuya Purevtseren
?
Day 2 php
Day 2   phpDay 2   php
Day 2 php
ETC
?
Day 1
Day 1Day 1
Day 1
ETC
?
§©§Ñ§ã§Ñ§Ô.§Þ§ß - §´?§â§Ú§Û§ß §è§Ñ§ç§Ú§Þ §ç§Ñ§Ñ§Ý§Ô§Ñ
§©§Ñ§ã§Ñ§Ô.§Þ§ß - §´?§â§Ú§Û§ß §è§Ñ§ç§Ú§Þ §ç§Ñ§Ñ§Ý§Ô§Ñ§©§Ñ§ã§Ñ§Ô.§Þ§ß - §´?§â§Ú§Û§ß §è§Ñ§ç§Ú§Þ §ç§Ñ§Ñ§Ý§Ô§Ñ
§©§Ñ§ã§Ñ§Ô.§Þ§ß - §´?§â§Ú§Û§ß §è§Ñ§ç§Ú§Þ §ç§Ñ§Ñ§Ý§Ô§Ñ
Singleton
?
Java script x§ï§â§ï§Ô§Ý§ï§ï
Java script x§ï§â§ï§Ô§Ý§ï§ï Java script x§ï§â§ï§Ô§Ý§ï§ï
Java script x§ï§â§ï§Ô§Ý§ï§ï
Singleton
?
Day 3 php working with string, number
Day 3   php working with string, numberDay 3   php working with string, number
Day 3 php working with string, number
ETC
?
NoSQL ?§Ô?§Ô§Õ§Ý§Ú§Û§ß §ã§Ñ§ß. MongoDB
NoSQL ?§Ô?§Ô§Õ§Ý§Ú§Û§ß §ã§Ñ§ß. MongoDBNoSQL ?§Ô?§Ô§Õ§Ý§Ú§Û§ß §ã§Ñ§ß. MongoDB
NoSQL ?§Ô?§Ô§Õ§Ý§Ú§Û§ß §ã§Ñ§ß. MongoDB
Battushig Namsraidorj
?
§³?§Ý§Ø§ï§ï
§³?§Ý§Ø§ï§ï§³?§Ý§Ø§ï§ï
§³?§Ý§Ø§ï§ï
solongoooo
?
My sql lec2
My sql lec2My sql lec2
My sql lec2
ETC
?
Day 4 php working with date and time, array
Day 4   php working with date and time, arrayDay 4   php working with date and time, array
Day 4 php working with date and time, array
ETC
?
User account policy
User account policyUser account policy
User account policy
Muuluu
?
§­§Ö§Ü§è 5
§­§Ö§Ü§è 5§­§Ö§Ü§è 5
§­§Ö§Ü§è 5
Muuluu
?
C++ vndsen oilgolt §ç§Ú§é§ï§ï§Ý 1
C++ vndsen oilgolt §ç§Ú§é§ï§ï§Ý 1C++ vndsen oilgolt §ç§Ú§é§ï§ï§Ý 1
C++ vndsen oilgolt §ç§Ú§é§ï§ï§Ý 1
Urantuya Purevtseren
?
Day 2 php
Day 2   phpDay 2   php
Day 2 php
ETC
?
Ad

MySQL §¿.§¯§Ñ§ã§Ñ§ß§Ø§Ñ§â§Ô§Ñ§Ý

  • 1. MYSQL §±§â§à§Ô§â§Ñ§Þ§Ú§ã§ä §¿.§¯§Ñ§ã§Ñ§ß§Ø§Ñ§â§Ô§Ñ§Ý
  • 2. MySQL §ä§å§ç§Ñ§Û ? 1995 §à§ß§í 5 §ã§Ñ§â§Õ §Ñ§ß§ç §Ù§Ñ§ç §Ù§ï§ï§Ý§Õ §Ô§Ñ§â§ã§Ñ§ß ? C / C++ ? §·?§Ô§Ø??§Ý§ï§Ô§é §ß§î MySQL AB ? Facebook, Google, Wikipedia ¡­
  • 5. MySQL query §Ò§Ú§é§Ú§ç§ï§Õ §Ñ§ß§ç§Ñ§Ñ§â§Ñ§ç §Ù?§Û§Ý§ã ? §´?§Ô§ï§ï§Þ§ï§Ý §Ñ§Ý§Õ§Ñ§Ñ§ß§å§å§Õ ? Limit §Ñ§ê§Ú§Ô§Ý§Ñ§ç ? §°§Ý§à§ß §Õ§Ñ§Ó§ç§Ñ§â Join §Ñ§ê§Ú§Ô§Ý§Ñ§ã§Ñ§ß ?§Ö§Õ §Ò?§ç §Ò§Ñ§Ô§Ñ§ß§í§Ô Select §ç§Ú§Û§ç SELECT * FROM sakila.actor INNER JOIN salila.film_actor USING (actor_id) INNER JOIN salila.film USING (film_id) WHERE sakila.film.title = 'Academy Dinosaur';
  • 6. MySQL query §Ò§Ú§é§Ú§ç§ï§Õ §Ñ§ß§ç§Ñ§Ñ§â§Ñ§ç §Ù?§Û§Ý§ã ? §¢?§ç §Ò§Ñ§Ô§Ñ§ß§í§Ô Select §ç§Ú§Û§ç SELECT * ? Count(*) => Count(column_name) ? Unique row SELECT 1 FROM user WHERE state = 'Alabama' LIMIT 1 ? Order by RAND() ? ENUM §Ú§Û§Ô §ä§à§Ô§ä§Þ§à§Ý §ä§ï§Þ§Õ§ï§Ô§ä§ä§ï§Û v§Ö§Õ VARCHAR
  • 7. Join Decomposition ? SELECT * FROM tag JOIN tag_post ON tag_post.tag_id=tag.id JOIN post ON tag_post.post_id=post.id WHERE tag.tag='mysql'; ? SELECT * FROM tag WHERE tag='mysql'; SELECT * FROM tag_post WHERE tag_id=1234; SELECT * FROM post WHERE post.id in (123,456,567,9098,8904);
  • 8. §·§ï§â§Ó§ï§ï Join §Ú§Û§Ô §Ú§Ý?? §ç§å§â§Õ§Ñ§ß, §Ñ§ê§Ú§Ô§ä§Ñ§Û §Ñ§Ø§Ý§å§å§Ý§ì§ñ §Ô§ï§Ó§ï§Ý ? Query Cache §Ñ§ê§Ú§Ô§Ý§Ñ§ç ? MyISAM engine ¨C §ä§Ñ§Û §ç?§ã§ß§ï§Ô§ä §Ñ§ê§Ú§Ô§Ý§Ñ§ç ? §°§Ý§à§ß §ã§Ö§â§Ó§Ö§â §Ñ§ê§Ú§Ô§Ý§Ñ§ç ? Join §Ú§Û§Ô In() §ã§à§Ý§Ú§ç ¨C §´§à§Þ §ç§ï§Þ§Ø§ï§ï§ä§ï§Û §ç?§ã§ß§ï§Ô§ä§ï§ß§Õ
  • 9. Unbuffered query ? mysql_connect("localhost", "php", "alm65z"); mysql_select_db("phpdb"); $result = mysql_unbuffered_query("SELECT ID, Name FROM conferences;"); $result = mysql_query("SELECT ID, Name FROM conferences;"); while ($row = mysql_fetch_assoc($result)) { extract($row, EXTR_PREFIX_ALL, "conf"); print "$conf_Namen"; }
  • 10. Chopping up a Query Mysql> DELETE FROM messages WHERE created < DATE_SUB(NOW(),INTERVAL 3 month) rows_affected = 0 do{ rows_affected = do_query( DELETE FROM messages WHERE created < DATE_SUB(NOW(),INTERVAL 3 month) LIMIT 10000 ) } while rows_affected > 0
  • 11. Query Cache // query cache does NOT work $r = mysql_query("SELECT username FROM user WHERE signup_date >= CURDATE()"); // query cache works! $today = date("Y-m-d"); $r = mysql_query("SELECT username FROM user WHERE signup_date >= '$today'");
  • 12. Index the Search Fields Mysql> Select count(1) From users Where last_name Like ¡®a%¡¯; 0.25 Mysql> Alter table ¡®users¡¯ Add index(¡®last_name¡¯); Mysql> Select count(1) From users Where last_name Like ¡®a%¡¯; 0.06 Count == 63285
  • 13. Index use for Join SELECT company_name FROM users LEFT JOIN companies ON (users.state = companies.state) WHERE users.id = 15 users.state - §Ú§ß§Õ§Ö§Ü§ã§Ý§ï§Ô§Õ§ã§ï§ß §Ò§Ñ§Ô§Ñ§ß§Ñ
  • 14. Procedure Analyse (max_element, max_memory) ? SELECT quantity, sale_order_id FROM `sale_order_queue` PROCEDURE ANALYSE ( 1000000, 256 )
  • 15. IP Addresses as Unsigned int UPDATE users SET ip = INET_ATON ('{$_SERVER['REMOTE_ADDR']}') WHERE user_id =15 192.168.1.100 INET_NTOA() , ip2long() , long2ip()
  • 16. Partition ? CREATE TABLE ti (id INT, amount DECIMAL(7,2), tr_date DATE) ENGINE=INNODB PARTITION BY HASH( MONTH(tr_date) ) PARTITIONS 6; ? Partition type ? Hash ? Range ? List ? Key
  • 17. Range
  • 18. Hash
  • 19. Key
  • 20. List
  • 21. Partition §Ñ§ê§Ú§Ô§Ý§Ñ§ç ? CREATE TABLE ts1 ( ? c1 INT, ? c2 VARCHAR(20) ? ) ? PARTITION BY LIST(c1) ( ? PARTITION p0 VALUES IN (0, 3, 6), ? PARTITION p1 VALUES IN (1, 4, 7), ? PARTITION p2 VALUES IN (2, 5, 8) ? ); ? INSERT INTO ts1 VALUES (8, 'mothra'); ? c1 c2 8 mothra