42
ی ره ساز ی خ وزهای ذ ت و مه ذاذه گا اي ذز پMySQL (InnoDB ) ما: ن هذ زا ا ت س ا ز گذ ه ر ز کی ذ ذه: ت ه ه ذ$ ازائ ي م( شن* ها راذزا- ب ما ه* ان ت س م ز87

موتورهای ذخیره سازی در پايگاه داده MySQL ( InnoDB )

  • Upload
    arissa

  • View
    127

  • Download
    0

Embed Size (px)

DESCRIPTION

موتورهای ذخیره سازی در پايگاه داده‌ MySQL ( InnoDB ). استاد راهنما: دکتر رهگذر. ارائه دهنده: هما برادران هاشمي. زمستان 87. فهرست مطالب. بررسی موتورهای ذخیره سازی در MySQL سطوح جداسازی در InnoDB قفل گذاري در InnoDB اجراي تراكنش در MySql اضافه كردن SavePoint ها به تراكنش‌ها - PowerPoint PPT Presentation

Citation preview

Slide 1

MySQL(InnoDB )

:

:

871 MySQL InnoDB InnoDB MySql SavePoint AutoCommit22MySQL

MySQL (view) (store procedure)

3 MySQL3 MySQL SQL : Storage :

MySQL 5.1

4 (Storage Engine)4 MySQL 5 MySQL

5 SortingGroup byLimit MySQL ( Kickfire) query 6 ()6 MySQL DBMS: (pluggable)

: Persistence, transactions, lock granularity, compression 2 phase commit commit ( ) ( )7 78 89 Innodb, Falcon, PBXT, Maria (future) MyISAM, ISAM (dead),Maria(current)

NDB, ScaleDB (CloseSource)

Memory, Federated, Archive,Blackhole, CSV, NitroDB(CS), SphinxSE , InfoBright(CS), Queue, Graph(CS)9 MySQL ( )ISAMMyISAM

BDB (BerkeleyDB)InnoDBFalcon

10 Transaction 2001 MySQL-3.23.34a Transaction 1011 MyISAM

FullText Searching stemmingCREATE TABLE articles (articleID int not null auto_increment primary key,title varchar (2MERGE),body text,fulltext (title,body) ); SELECT title FROM articleWHERE MATCH (title, body) AGAINST ('miniprogrammer');1112 InnoDB InnoDB 10 :

SQL ACID MVCC(multi-version concurrency control ) ( )Fuzzy Checkpointing

1213 InnoDB MySQL log SELECT ( Oracle) ROLLBACK

13 MySQL InnoDB InnoDB MySql SavePoint AutoCommit141415 InnoDBREAD UNCOMMITTEDDirty Read commit READ COMMITTED REPEATABLE READ SERIALIZABLE SELECT SELECT... LOCK IN SHARE MODE 1516 Session Global Global: Set Trancation Connection Connection Session : Set Trancation Connection : Set Transaction SET [SESSION | GLOBAL] TRANSACTION ISOLATION LEVEL {READ UNCOMMITTED | READ COMMITTED | REPEATABLE READ | SERIALIZABLE}1617

()1718 (Consistent Read) : InnoDB - SELECT READ COMMITTED REPEATABLE READ

18 MySQL InnoDB InnoDB MySql SavePoint AutoCommit1919 InnoDB20 : . :

SELECT * FROM PARENT WHERE NAME = 'Jones' LOCK SHARE MODE; 2021 SQL InnoDBSELECT ... FROM ... SELECT ... FROM ... LOCK IN SHARE MODE (shared next-key locks )SELECT ... FROM ... FOR UPDATE (exclusive next-key locks)INSERT INTO ... VALUES (...) 2122 SQL InnoDB ()INSERT INTO T SELECT ... FROM S WHERE ... T

CREATE TABLE ... SELECT ... SELECT .

REPLACE INSERT . - .2223 SQL InnoDB()UPDATE ... SET ... WHERE ... - . LOCK TABLES... . MySQL . InnoDB .

23LOCK {TABLE | TABLES} [AS ] {READ [LOCAL] | [LOW_PRIORITY] WRITE}[{, [AS ] {READ [LOCAL] | [LOW_PRIORITY] WRITE}}...]

Read: Connection Connection . Read Local insert Nonconflicting Connection .24 2425 Write: Connection Connection :

2526

26 MySQL InnoDB InnoDB MySql SavePoint AutoCommit2727 YES : InnoDB .NO: InnoDB .DISABLED InnoDB skip-innodb .28 MySQL InnoDB

2829

2930

3031

()31 ALTER TABLE: Modifies a table definition. CREATE INDEX: Creates an index on a table. DROP DATABASE: Removes a database from a MySQL server. DROP INDEX: Removes an index on a table. DROP TABLE: Removes a table from a database. LOCK TABLES: Prevents concurrent access to tables. RENAME TABLES: Renames a table. SET AUTOCOMMIT=1: Sets the autocommit mode to on. START TRANSACTION: Begins a transaction. TRUNCATE TABLE: Removes data from a table. UNLOCK TABLES: Unlocks locked tables.32 Commit RollBack Commit .32 MySQL InnoDB InnoDB MySql SavePoint AutoCommit333334SAVEPOINT ROLLBACK TO SAVEPOINT SavePoint

34

35 SavePoint ()35 MySQL InnoDB InnoDB MySql SavePoint AutoCommit363637AutoCommit Commit set

SET AUTOCOMMIT = 0;SET ATOCOMMIT = 1;

SELECT @@autocommit;

3738

AUTOCOMMIT = 0 session Commit RollBack 3839 InnoDB ( yahoo ) hash InnoDB MySQL : index SELCET COUNT(*) 3940 () InnoDB CPU MySQL 40Bannon, Chin, Kassam, and Roszko, InnoDB Concrete Architecture. Waterloo, Ontario: Software Architecture Group, University of Waterloo, 2002Bannon, Chin, Kassam, and Roszko, MySQL Conceptual Architecture. Waterloo, Ontario: Software Architecture Group, University of Waterloo, 2002M Di Giacomo, MySQL: lessons learned on a digital library, Software, IEEE, - ieeexplore.ieee.org, 2005.Leon Atkinson, Core MySQL, Prentice Hall PTR,ISBN 0-13-00661902, 2002. Silberschatz, H. Korth and S. Sudarshan, Database system concepts, Mc Graw Hill 4th Edition, ISBN 0-07-112268-0, 2002.MySQL reference manual, available at http://www.mysql.org.Atkinson, Leon. Core, MySQL: The Serious Developers Guide. New Jersey: Prentice Hall Publishing, 2002.http:// www.innoDB.com

4141

42