<Insert Picture Here>




          Getting ready for the new MySQL
          Giuseppe Maxia
          MySQL Community Tea...
Contents
                     •   Future: MySQL 5.5
                         ✦   performance
                             ...
Contents
                     •   Future: MySQL 5.5
                         ✦   performance
                             ...
MySQL 5.5


                     •   MySQL 5.5.5-m3 released on July 18th
                     •   Default storage engine ...
Contents
                     •   Future: MySQL 5.5
                         ✦   performance
                             ...
default engine
select @@version,@@storage_engine;
+-----------+------------------+
| @@version | @@storage_engine |
+-----...
Plugin version
select @@version, @@innodb_version;
+-----------+------------------+
| @@version | @@innodb_version |
+----...
InnoDB at a glance

                     •   Performance Improvements
                         ✦   Improved recovery perfo...
Faster!

                     •   How fast?
                     •   In my benchmarks, 10% to 50% faster.
                ...
Contents
                     •   Future: MySQL 5.5
                         ✦   performance
                             ...
PERFORMANCE
                              SCHEMA
                     •   PERFORMANCE_SCHEMA presents
                    ...
performance schema
SELECT EVENT_ID, EVENT_NAME, TIMER_WAIT
FROM EVENTS_WAITS_HISTORY
WHERE THREAD_ID = 13
ORDER BY EVENT_I...
performance schema
mysql> UPDATE SETUP_INSTRUMENTS
       SET ENABLED = 'NO'
       WHERE NAME =
'wait/synch/mutex/myisamm...
Contents
                     •   Future: MySQL 5.5
                         ✦   performance
                             ...
MySQL 5.5 enhancements
        • PARTITION BY RANGE COLUMNS
        • PARTITION BY LIST COLUMNS
        • TO_SECONDS




 ...
MySQL 5.5 enhancements       R E
      CREATE TABLE t (           FO
        dt date
                             B E     ...
MySQL 5.5 enhancements       R E
                                FO
     SHOW CREATE TABLE t G B E      5.1
            Ta...
MySQL 5.5 enhancements
                                   E R
      CREATE TABLE t (
                                 FT
 ...
MySQL 5.5 enhancements
                                   E R
                                 FT
  SHOW CREATE TABLE t
  ...
MySQL 5.5 - Multiple columns
      CREATE TABLE t (
        a int,
        b int
      )PARTITION BY RANGE COLUMNS   (a,b)...
partition definition
                                       by range (a,b)
                records    partition          L...
partition definition
                                               by range (a,b)
            records
                   ...
partition definition
                                               by range (a,b)
          records                  part...
partition definition
                                               by range (a,b)
          records                  part...
partition definition
                                               by range (a,b)
          records                  part...
CREATE TABLE employees (
  emp_no int(11) NOT NULL,
  birth_date date NOT NULL,
  first_name varchar(14) NOT NULL,
  last_...
MySQL 5.5 enhancements
        • TRUNCATE PARTITION
        • TO_SECONDS()




                               27



Thursd...
Contents
                     •   Future: MySQL 5.5
                         ✦   performance
                             ...
SIGNAL and RESIGNAL

                     •   Allow error handling in stored routines
                     •   The executi...
Contents
                     •   Future: MySQL 5.5
                         ✦   performance
                             ...
semi-synchronous replication


                                    semisynch
                         master   master plug...
semi-synchronous replication



                         master   COMMIT    client


                                     ...
semi-synchronous replication



                         master             client

    COMMIT
    binary log             ...
semi-synchronous replication



                         master             client

    COMMIT
    binary log             ...
semi-synchronous replication



                         master                    client

    COMMIT
    binary log
     ...
semi-synchronous replication



                         master              client

    COMMIT
    binary log            ...
Contents
                     •   Future: MySQL 5.5
                         ✦   performance
                             ...
Missed announcement


                     •   A GA release
                     •   As of MySQL 5.1.47
                  ...
INNODB 1.0.9
                         5.1




Thursday, 22 July 2010
INNODB 1.0.9
                         5.1




Thursday, 22 July 2010
MySQL                         INFORMATION
                         InnoDB plugin   SCHEMA table plugin
             Server...
Installation (1)
my.cnf

[mysqld]
plugin_dir = /usr/local/mysql/lib/plugin
ignore_builtin_innodb
plugin-load=innodb=ha_inn...
Installation (1a)
my.cnf

[mysqld]
plugin-load=innodb=ha_innodb_plugin.so;
innodb_trx=ha_innodb_plugin.so;
innodb_locks=ha...
Installation (2)
SET GLOBAL innodb_fast_shutdown=0;

RESTART the server




Thursday, 22 July 2010
Installation - 2nd method (1)
my.cnf

[mysqld]
ignore_builtin_innodb




Thursday, 22 July 2010
Installation - 2nd method (2)
SET GLOBAL innodb_fast_shutdown=0;

RESTART the server




Thursday, 22 July 2010
Installation - 2nd method (3)
mysql
INSTALL PLUGIN INNODB SONAME 'ha_innodb_plugin.so';
INSTALL PLUGIN INNODB_TRX SONAME
'...
Installation - 2nd method (4)
my.cnf

[mysqld]


default-storage-engine=InnoDB
innodb_file_per_table=1
innodb_file_format=...
Installation - 2nd method (5)
SET GLOBAL innodb_fast_shutdown=0;

RESTART the server




Thursday, 22 July 2010
Installation differences
         •       Method 1 (plugin-load in my.cnf)
               ✦         Only one operation
   ...
CAVEAT

      •       If you uninstall the InnoDB plugin, remember:
             ✦      The tables are not backward compat...
hands on




Thursday, 22 July 2010
Checking installation
select @@version, @@innodb_version;
+-----------+------------------+
| @@version | @@innodb_version ...
Detecting locks
session1> select c from t1 for update;
+------+
| c    |
+------+
| aaa |
| bbb |
| ccc |
+------+




Thu...
Detecting locks
session2> select c from t1 for update;

[… waiting]




Thursday, 22 July 2010
Detecting locks
session3> select i from t1 for update;

[… waiting]




Thursday, 22 July 2010
getting locks information
SELECT
  r.trx_id waiting_trx_id,
  r.trx_mysql_thread_id waiting_thread,
  r.trx_query waiting_...
getting locks information




Thursday, 22 July 2010
getting locks information
************* 1.         row **************
 waiting_trx_id:         711
 waiting_thread:       ...
getting locks information
************* 2.         row **************
 waiting_trx_id:         711
 waiting_thread:       ...
getting locks information
************* 3.         row **************
 waiting_trx_id:         710
 waiting_thread:       ...
The preceding is intended to outline our general
     product direction. It is intended for information
     purposes only...
THANKS
                                                                              Let's talk!




This work is licensed...
Upcoming SlideShare
Loading in …5
×

Getting ready for the new MySQL

2,606 views

Published on

A description of some of the main features in MySQL 5.5 and instructions on installing and using the InnoDB plugin in MySQL 5.1

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
2,606
On SlideShare
0
From Embeds
0
Number of Embeds
3
Actions
Shares
0
Downloads
112
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Getting ready for the new MySQL

  1. 1. <Insert Picture Here> Getting ready for the new MySQL Giuseppe Maxia MySQL Community Team Leader 1006.01 Thursday, 22 July 2010
  2. 2. Contents • Future: MySQL 5.5 ✦ performance ★ InnoDB plugin 1.2 default engine ★ Performance schema ✦ ease of use (partitioning, SIGNAL) ✦ reliability (semisynch replication) • Current: MySQL 5.1 ✦ performance: InnoDB plugin 1.0.8 Thursday, 22 July 2010
  3. 3. Contents • Future: MySQL 5.5 ✦ performance ★ InnoDB plugin 1.1 default engine ★ Performance schema ✦ ease of use (partitioning, SIGNAL) ✦ reliability (semisynch replication) • Current: MySQL 5.1 ✦ performance: InnoDB plugin 1.0.8 Thursday, 22 July 2010
  4. 4. MySQL 5.5 • MySQL 5.5.5-m3 released on July 18th • Default storage engine is now InnoDB • Lots of goodies Thursday, 22 July 2010
  5. 5. Contents • Future: MySQL 5.5 ✦ performance ★ InnoDB plugin 1.1 default engine ★ Performance schema ✦ ease of use (partitioning, SIGNAL) ✦ reliability (semisynch replication) • Current: MySQL 5.1 ✦ performance: InnoDB plugin 1.0.8 Thursday, 22 July 2010
  6. 6. default engine select @@version,@@storage_engine; +-----------+------------------+ | @@version | @@storage_engine | +-----------+------------------+ | 5.1.48 | MyISAM | +-----------+------------------+ select @@version, @@storage_engine; +-----------+------------------+ | @@version | @@storage_engine | +-----------+------------------+ | 5.5.5-m3 | InnoDB | +-----------+------------------+ Thursday, 22 July 2010
  7. 7. Plugin version select @@version, @@innodb_version; +-----------+------------------+ | @@version | @@innodb_version | +-----------+------------------+ | 5.5.5-m3 | 1.1.1 | +-----------+------------------+ Thursday, 22 July 2010
  8. 8. InnoDB at a glance • Performance Improvements ✦ Improved recovery performance ✦ Multiple buffer pool instances ✦ Multiple rollback segments ✦ Native asynchronous I/O for Linux ✦ Extended change buffering Thursday, 22 July 2010
  9. 9. Faster! • How fast? • In my benchmarks, 10% to 50% faster. • Others have reported much higher gains. • You decide. • Test it under your load. Thursday, 22 July 2010
  10. 10. Contents • Future: MySQL 5.5 ✦ performance ★ InnoDB plugin 1.2 default engine ★ Performance schema ✦ ease of use (partitioning, SIGNAL) ✦ reliability (semisynch replication) • Current: MySQL 5.1 ✦ performance: InnoDB plugin 1.0.8 Thursday, 22 July 2010
  11. 11. PERFORMANCE SCHEMA • PERFORMANCE_SCHEMA presents low level MySQL performance information • Data can be cleared • Filters with WHERE are allowed • Must be enabled with -- performance_schema Thursday, 22 July 2010
  12. 12. performance schema SELECT EVENT_ID, EVENT_NAME, TIMER_WAIT FROM EVENTS_WAITS_HISTORY WHERE THREAD_ID = 13 ORDER BY EVENT_ID; +----------+-----------------------------------------+------------+ | EVENT_ID | EVENT_NAME | TIMER_WAIT | +----------+-----------------------------------------+------------+ | 86 | wait/synch/mutex/mysys/THR_LOCK::mutex | 686322 | | 87 | wait/synch/mutex/mysys/THR_LOCK_malloc | 320535 | | 88 | wait/synch/mutex/mysys/THR_LOCK_malloc | 339390 | | 89 | wait/synch/mutex/mysys/THR_LOCK_malloc | 377100 | | 90 | wait/synch/mutex/sql/LOCK_plugin | 614673 | | 91 | wait/synch/mutex/sql/LOCK_open | 659925 | | 92 | wait/synch/mutex/sql/THD::LOCK_thd_data | 494001 | | 93 | wait/synch/mutex/mysys/THR_LOCK_malloc | 222489 | | 94 | wait/synch/mutex/mysys/THR_LOCK_malloc | 214947 | | 95 | wait/synch/mutex/mysys/LOCK_alarm | 312993 | +----------+-----------------------------------------+------------+ Thursday, 22 July 2010
  13. 13. performance schema mysql> UPDATE SETUP_INSTRUMENTS SET ENABLED = 'NO' WHERE NAME = 'wait/synch/mutex/myisammrg/MYRG_INFO::mutex'; mysql> UPDATE SETUP_CONSUMERS SET ENABLED = 'NO' WHERE NAME = 'file_summary_by_instance'; Thursday, 22 July 2010
  14. 14. Contents • Future: MySQL 5.5 ✦ performance ★ InnoDB plugin 1.2 default engine ★ Performance schema ✦ ease of use (partitioning, SIGNAL) ✦ reliability (semisynch replication) • Current: MySQL 5.1 ✦ performance: InnoDB plugin 1.0.8 Thursday, 22 July 2010
  15. 15. MySQL 5.5 enhancements • PARTITION BY RANGE COLUMNS • PARTITION BY LIST COLUMNS • TO_SECONDS 15 Thursday, 22 July 2010
  16. 16. MySQL 5.5 enhancements R E CREATE TABLE t ( FO dt date B E 5.1 ) PARTITION BY RANGE (TO_DAYS(dt)) ( PARTITION p01 VALUES LESS THAN (TO_DAYS('2007-01-01')), PARTITION p02 VALUES LESS THAN (TO_DAYS('2008-01-01')), PARTITION p03 VALUES LESS THAN (TO_DAYS('2009-01-01')), PARTITION p04 VALUES LESS THAN (MAXVALUE)); 16 Thursday, 22 July 2010
  17. 17. MySQL 5.5 enhancements R E FO SHOW CREATE TABLE t G B E 5.1 Table: t Create Table: CREATE TABLE `t` ( `dt` date DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 /*!50100 PARTITION BY RANGE (TO_DAYS (dt)) (PARTITION p01 VALUES LESS THAN (733042) ENGINE = MyISAM, […] 17 Thursday, 22 July 2010
  18. 18. MySQL 5.5 enhancements E R CREATE TABLE t ( FT dt date A 5.5 ) PARTITION BY RANGE COLUMNS (dt) ( PARTITION p01 VALUES LESS THAN ('2007-01-01'), PARTITION p02 VALUES LESS THAN ('2008-01-01'), PARTITION p03 VALUES LESS THAN ('2009-01-01'), PARTITION p04 VALUES LESS THAN (MAXVALUE)); 18 Thursday, 22 July 2010
  19. 19. MySQL 5.5 enhancements E R FT SHOW CREATE TABLE t Table: t A 5.5 Create Table: CREATE TABLE `t` ( `dt` date DEFAULT NULL ) ENGINE=MyISAM DEFAULT CHARSET=latin1 /*!50500 PARTITION BY RANGE COLUMNS (dt) (PARTITION p01 VALUES LESS THAN ('2007-01-01') ENGINE = MyISAM, […] 19 Thursday, 22 July 2010
  20. 20. MySQL 5.5 - Multiple columns CREATE TABLE t ( a int, b int )PARTITION BY RANGE COLUMNS (a,b) ( PARTITION p01 VALUES LESS THAN (10,1), PARTITION p02 VALUES LESS THAN (10,10), PARTITION p03 VALUES LESS THAN (10,20), PARTITION p04 VALUES LESS THAN (MAXVALUE, MAXVALUE)); 20 Thursday, 22 July 2010
  21. 21. partition definition by range (a,b) records partition LESS THAN a b p01 10 10 1 10 p02 10 20 10 9 p03 10 30 10 10 p04 10 MAXVALUE 10 11 p05 MAXVALUE MAXVALUE Thursday, 22 July 2010
  22. 22. partition definition by range (a,b) records partition LESS THAN a b p01 10 10 1 10 p02 10 20 10 9 p03 10 30 10 10 p04 10 MAXVALUE 10 11 p05 MAXVALUE MAXVALUE (1,10) < (10,10) ? (a < 10) OR ((a = 10) AND (b < 10)) (1 < 10) OR TRUE ((1 = 10) AND (10 < 10)) Thursday, 22 July 2010
  23. 23. partition definition by range (a,b) records partition LESS THAN a b p01 10 10 1 10 p02 10 20 10 9 p03 10 30 10 10 p04 10 MAXVALUE 10 11 p05 MAXVALUE MAXVALUE (10,9) < (10,10) ? (a < 10) OR ((a = 10) AND (b < 10)) (10 < 10) OR TRUE ((10 = 10) AND (9 < 10)) Thursday, 22 July 2010
  24. 24. partition definition by range (a,b) records partition LESS THAN a b p01 10 10 1 10 p02 10 20 10 9 p03 10 30 10 10 p04 10 MAXVALUE 10 11 p05 MAXVALUE MAXVALUE (10,10) < (10,10) ? (a < 10) OR ((a = 10) AND (b < 10)) (10 < 10) OR FALSE ((10 = 10) AND (10 < 10)) Thursday, 22 July 2010
  25. 25. partition definition by range (a,b) records partition LESS THAN a b p01 10 10 1 10 p02 10 20 10 9 p03 10 30 10 10 p04 10 MAXVALUE 10 11 p05 MAXVALUE MAXVALUE (10,10) < (10,20) ? (a < 10) OR ((a = 10) AND (b < 20)) (10 < 10) OR TRUE ((10 = 10) AND (10 < 20)) Thursday, 22 July 2010
  26. 26. CREATE TABLE employees ( emp_no int(11) NOT NULL, birth_date date NOT NULL, first_name varchar(14) NOT NULL, last_name varchar(16) NOT NULL, gender char(1) DEFAULT NULL, hire_date date NOT NULL ) ENGINE=MyISAM PARTITION BY RANGE COLUMNS(gender,hire_date) (PARTITION p01 VALUES LESS THAN ('F','1990-01-01'), PARTITION p02 VALUES LESS THAN ('F','2000-01-01'), PARTITION p03 VALUES LESS THAN ('F',MAXVALUE), PARTITION p04 VALUES LESS THAN ('M','1990-01-01'), PARTITION p05 VALUES LESS THAN ('M','2000-01-01'), PARTITION p06 VALUES LESS THAN ('M',MAXVALUE), PARTITION p07 VALUES LESS THAN (MAXVALUE,MAXVALUE) 26 Thursday, 22 July 2010
  27. 27. MySQL 5.5 enhancements • TRUNCATE PARTITION • TO_SECONDS() 27 Thursday, 22 July 2010
  28. 28. Contents • Future: MySQL 5.5 ✦ performance ★ InnoDB plugin 1.2 default engine ★ Performance schema ✦ ease of use (partitioning, SIGNAL) ✦ reliability (semisynch replication) • Current: MySQL 5.1 ✦ performance: InnoDB plugin 1.0.8 Thursday, 22 July 2010
  29. 29. SIGNAL and RESIGNAL • Allow error handling in stored routines • The execution is passed to an error handler • Accessible error values are SQLSTATE, MESSAGE_TEXT and MYSQL_ERRNO O • RESIGNAL can pass along the original EM or a new information Thursday, 22 July 2010 D
  30. 30. Contents • Future: MySQL 5.5 ✦ performance ★ InnoDB plugin 1.2 default engine ★ Performance schema ✦ ease of use (partitioning, SIGNAL) ✦ reliability (semisynch replication) • Current: MySQL 5.1 ✦ performance: InnoDB plugin 1.0.8 Thursday, 22 July 2010
  31. 31. semi-synchronous replication semisynch master master plugin semisynch slave plugin slave 1 slave 2 Thursday, 22 July 2010
  32. 32. semi-synchronous replication master COMMIT client 1 slave 1 slave 2 Thursday, 22 July 2010
  33. 33. semi-synchronous replication master client COMMIT binary log 2 slave 1 slave 2 Thursday, 22 July 2010
  34. 34. semi-synchronous replication master client COMMIT binary log 3 relay log slave 1 slave 2 Thursday, 22 July 2010
  35. 35. semi-synchronous replication master client COMMIT binary log confirm log 4 reception relay log slave 1 slave 2 Thursday, 22 July 2010
  36. 36. semi-synchronous replication master client COMMIT binary log 5 relay log O slave 1 slave 2 EM D Thursday, 22 July 2010
  37. 37. Contents • Future: MySQL 5.5 ✦ performance ★ InnoDB plugin 1.2 default engine ★ Performance schema ✦ ease of use (partitioning, SIGNAL) ✦ reliability (semisynch replication) • Current: MySQL 5.1 ✦ performance: InnoDB plugin 1.0.8 Thursday, 22 July 2010
  38. 38. Missed announcement • A GA release • As of MySQL 5.1.47 • The InnoDB plugin is GA • Ready to use for immediate gains Thursday, 22 July 2010
  39. 39. INNODB 1.0.9 5.1 Thursday, 22 July 2010
  40. 40. INNODB 1.0.9 5.1 Thursday, 22 July 2010
  41. 41. MySQL INFORMATION InnoDB plugin SCHEMA table plugin Server Thursday, 22 July 2010
  42. 42. Installation (1) my.cnf [mysqld] plugin_dir = /usr/local/mysql/lib/plugin ignore_builtin_innodb plugin-load=innodb=ha_innodb_plugin.so default-storage-engine=InnoDB innodb_file_per_table=1 innodb_file_format=barracuda innodb_strict_mode=1 Thursday, 22 July 2010
  43. 43. Installation (1a) my.cnf [mysqld] plugin-load=innodb=ha_innodb_plugin.so; innodb_trx=ha_innodb_plugin.so; innodb_locks=ha_innodb_plugin.so; innodb_lock_waits=ha_innodb_plugin.so; innodb_cmp=ha_innodb_plugin.so; innodb_cmp_reset=ha_innodb_plugin.so; innodb_cmpmem=ha_innodb_plugin.so; innodb_cmpmem_reset=ha_innodb_plugin.so #(all in one line with no spaces) Thursday, 22 July 2010
  44. 44. Installation (2) SET GLOBAL innodb_fast_shutdown=0; RESTART the server Thursday, 22 July 2010
  45. 45. Installation - 2nd method (1) my.cnf [mysqld] ignore_builtin_innodb Thursday, 22 July 2010
  46. 46. Installation - 2nd method (2) SET GLOBAL innodb_fast_shutdown=0; RESTART the server Thursday, 22 July 2010
  47. 47. Installation - 2nd method (3) mysql INSTALL PLUGIN INNODB SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_TRX SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_LOCKS SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_LOCK_WAITS SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_CMP SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_CMP_RESET SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_CMPMEM SONAME 'ha_innodb_plugin.so'; INSTALL PLUGIN INNODB_CMPMEM_RESET SONAME 'ha_innodb_plugin.so'; Thursday, 22 July 2010
  48. 48. Installation - 2nd method (4) my.cnf [mysqld] default-storage-engine=InnoDB innodb_file_per_table=1 innodb_file_format=barracuda innodb_strict_mode=1 Thursday, 22 July 2010
  49. 49. Installation - 2nd method (5) SET GLOBAL innodb_fast_shutdown=0; RESTART the server Thursday, 22 July 2010
  50. 50. Installation differences • Method 1 (plugin-load in my.cnf) ✦ Only one operation ✦ But error prone (one looooong command) ✦ plugins not stored in mysql.plugin table • Method 2 (install plugin) ✦ plugin info saved to mysql.plugin table ✦ Easier to write ✦ 2 restarts required Thursday, 22 July 2010
  51. 51. CAVEAT • If you uninstall the InnoDB plugin, remember: ✦ The tables are not backward compatible ✦ You must uninstall all the INFORMATION_SCHEMA plugin tables BEFORE removing the InnoDB plugin ✦ If the plugin is busy, it may not be removed until you restart the server Thursday, 22 July 2010
  52. 52. hands on Thursday, 22 July 2010
  53. 53. Checking installation select @@version, @@innodb_version; +-----------+------------------+ | @@version | @@innodb_version | +-----------+------------------+ | 5.1.48 | 1.0.9 | +-----------+------------------+ O EM D Thursday, 22 July 2010
  54. 54. Detecting locks session1> select c from t1 for update; +------+ | c | +------+ | aaa | | bbb | | ccc | +------+ Thursday, 22 July 2010
  55. 55. Detecting locks session2> select c from t1 for update; [… waiting] Thursday, 22 July 2010
  56. 56. Detecting locks session3> select i from t1 for update; [… waiting] Thursday, 22 July 2010
  57. 57. getting locks information SELECT r.trx_id waiting_trx_id, r.trx_mysql_thread_id waiting_thread, r.trx_query waiting_query, b.trx_id blocking_trx_id, b.trx_mysql_thread_id blocking_thread, b.trx_query blocking_query FROM innodb_lock_waits w INNER JOIN innodb_trx b ON b.trx_id = w.blocking_trx_id INNER JOIN innodb_trx r ON r.trx_id = w.requesting_trx_id Thursday, 22 July 2010
  58. 58. getting locks information Thursday, 22 July 2010
  59. 59. getting locks information ************* 1. row ************** waiting_trx_id: 711 waiting_thread: 3 waiting_query: select c from t1 for update blocking_trx_id: 710 blocking_thread: 2 blocking_query: select i from t1 for update Thursday, 22 July 2010
  60. 60. getting locks information ************* 2. row ************** waiting_trx_id: 711 waiting_thread: 3 waiting_query: select c from t1 for update blocking_trx_id: 70F blocking_thread: 1 blocking_query: NULL Thursday, 22 July 2010
  61. 61. getting locks information ************* 3. row ************** waiting_trx_id: 710 waiting_thread: 2 waiting_query: select i from t1 for update blocking_trx_id: 70F blocking_thread: 1 blocking_query: NULL Thursday, 22 July 2010
  62. 62. The preceding is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. The development, release, and timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle. 62 Thursday, 22 July 2010
  63. 63. THANKS Let's talk! This work is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported License. To view a copy of this license, visit http:// creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, 171 Second Street, Suite 300, San Francisco, California, 94105, USA. Thursday, 22 July 2010

×