Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
MySQL_ktzh.docx
Скачиваний:
26
Добавлен:
18.02.2016
Размер:
1.23 Mб
Скачать

Қосымшалары

2009 жылдан бастап, MySQL 5.1-ші нұсқасы 2 түрлі нұсқада ұсынылады: қайнары тегін Community Server және ақылы Enterprise Server. MySQL 5.5-те осы лицензиялар негізінде ұсынылады. MySQL 5.5 және MySQL 5.1 нұсқаларының қайнарлары ортақ және келесідей қосымшалар бар:

  • ANSI SQL 99 стандартының кең жиынтығы мен өз қосымшалары бар

  • Бірнеше платформаны қолдауы

  • Сақталған процедуралар

  • Триггерлер

  • Курсорлар

  • Жаңғырмалы көріністер

  • Ақпарат схемасы

  • Information schema

  • Қатал режим

  • X/Open XA үлестірілген транзакция өңделімін (Distributed Transaction Processing (DTP)) қолдау; Oracle-дың InnoDB қозғалтқышын қолдану арқылы, осының бөлігі ретінде екі фазалық жазу

  • Тәуелсіз сақтау қозғалтқыштары (MyISAM - оқу үшін, InnoDB - транзакцияларға және сілтемелік бүтіндік, MySQL Archive - мұрағат қорын шағын орында сақтау үшін)

  • InnoDB және Cluster сақтау қозғалтқыштарындағы транзакциялардың қолдауы; InnoDB-ның белгіленген нүктені қолдауы

  • SSL қолдауы

  • Тапсырысты кэштау

  • Құрамдас SELECT тапсырыстары

  • Бір slave-ке бір master, бірнеше slave-ке бір master және автоматты емес бір slave-ке бірнеше master репликацияларын қолдауы (яғни, Master-Master және Master-Slave репликациялары)

  • MyISAM қозғалтқышы арқылы толық текстік индексациялау және іздеу

  • Енгізілген мәліметтер қоры кітапханасы

  • Жартылай Unicode-ты қолдау (UTF-8 және UCS-2-мен кодталған мәліметтер, BMP типтегі мәліметімен шектеледі)

  • Транзакция қолдауы бар қозғалтқыштарды (InnoDB және Cluster) қоданғандағы ACID ережелерінің толық сәйкестігі

  • Кестені партицияланғанда, пратицияларды оңтайландырғыштан толығымен жою

  • MySQL Cluster арқылы ортақ мәліметсіз кластерлеу

  • Жағдайға байланысты "қатаң мұрағаттау" (mysqlhotcopy қолдану арқылы)

Ай сайын бағдарламашылар MySQL серверінің жаңа нұсқаларын шығарып отырады. Бағдарламаның қайнарларын MySQL сайтынан немесе MySQL-дің Bazaar репозиторийінен GPL лицензиясы бойынша алуға болады.

Ерекше қосымшалары

MySQL жүйесі келесі қосымшаларды қолдауды жүзеге асырады. Бірақ ол қосымшаларды басқа жүйелер қолдамауы мүмкін:

  • Әр кестелерге жеке сақтау қозғауыштарын қолдану. Бұл, бағдарламашыға тиімдісін таңдауға мүмкіндік береді(MySQL 5.0 нұсқасында әр қозғауыштар компиляция арқылы жүйеге ендірілуі керек; MySQL 5.1 нұсқасында, қозғауыштар динамикалық түрде қолданылу барысында жүктеліне алады):

    • Басты сақтау қозғауыштары (MyISAM, Falcon, Merge, Memory (heap), Federated, Archive, CSV, Blackhole, Cluster, EXAMPLE, Maria, және MySQL 5.5 нұсқасынан бастап жүйеде стандартты етіп қойылған InnoDB)

    • Сырттан жасалған қозғауыштар(solidDB, NitroEDB, ScaleDB, TokuDB, Infobright (бұрынғы Brighthouse), Kickfire, XtraDB, IBM DB2). InnoDB - сырттан жасалған қозғауыш болатын, бірақ Oracle компаниясының сатып алуы, MySQL ядросын және InnoDB екеуін бірге қосты.

    • Қоғамдастық құрған (memcache engine, httpd, PBXT, Revision Engine) қозғауыштар

    • Меншік қоғауыштар

  • Топтасқан фиксация - секундына бірнеше жазу орындау үшін бірнеше қосылымдардағы бірнеше транзакцияларды біріктіру. (PostgreSQL-де бұл функционалдың кеңейтілген формасы бар)

Шектеулері

MySQL, кебір SQL стандарттарын толық қолдамайды. Мысалы, стандартты SQL синтаксын, мәліметтер шектеулері, сыртқы кілттерге сілтемелерді тексеру және де басқа бизнесс логикадағы тұрақтылықты сақтауға арналған функциялары, қатаң тексерулерді орындамайды. Триггерлер болса бір тапсырыста бір рет ғана орындалады, яғни бір кестеге орындалған енгізу операциясының алдында немесе одан кейін бір-ақ рет бір триггерді орындауға болады. Көріністерге болса триггер орындауға болмайды.

Тарихы

MySQL жасалу кезеңдері келесілерден тұрады:

  • Майкл Видньюс (Michael Widenius) және Дэвид Аксмарк (David Axmark) 1994 жылы ең бірінші нұсқасын жасады

  • Бірінші ішкі шығарылым 23 мамыр 1995 жылы шықты

  • 1998 жылдың 8 қаңтарында Windows 95 және NT арналған нұсқасы шығарылды

  • 3.19 нұсқа: www.tcx.se сайтында 1996 жылдың аяғында шықты

  • 3.20 нұсқа: 1997 жылы, қаңтарында

  • 3.21 нұсқа: www.mysql.com сайтында 1998 жылы шықты

  • 3.22 нұсқа: 1998 жылы alpha және beta нұсқалары шықты

  • 3.23 нұсқа: 2000 жылы beta, ал 2001 жылы қаңтарда шығарылымға жіберілді

  • 4.0 нұсқа: 2002 жылы тамызда бета, ал 2003 наурызда толық шығарылымға шықты

  • 4.01 нұсқа: 2003 жылы тамызда бета нұсқасы шықты

  • 4.1 нұсқа: 2004 жылы маусымда бета нұсқасы, 2004 жылы қарашада толық шығарылымға шықты(R-tree және B-tree алгоритмдері, құрама тапсырыстар, дайындалған тапсырыстар)

  • 5.0 нұсқа: 2005 жылдың наурызынан бастап бета нұсқасы, 2005 жылы қазанда толық шығарылымы (курсорлар, сақталған процедуралар, триггерлер, көріністер, XA транзакциялары)

Біріктірілген Сақтау Қозғалтқышын (Federated Storage Engine) жасаған бағдарламашы: "Біріктірілген Сақтау Қозғалтқышы - сынауға жасалған қозғалтқыш" деген, бірақ ол MySQL 5.0 нұсқасының басты таратылымдарына енгізіліп, стандартты опция ретінде қосылды. Бұл туралы біраз мағлұматтар "MySQL Federated Tables: The Missing Manual" құжаттамасында жазылған.

  • 2008 жылы 26 ақпанда Sun Microsystems компаниясы MySQL AB-ды сатып алды.

  • 5.1 нұсқа: 27 қараша 2008 жылы шықты (оқиғаларды кезекке қою, партициялау немесе бақшалау, плагиндарға API, қатар негізіндегі репликация, серверлік журнал кестелері)

5.1 нұсқада 20-дай белгілі бағдарлама қателіктері болды. Оның 35 пайызы 5.0 нұсқадан шыққандар (көбісі 5.1.51 нұсқасында жөнделді).

MySQL 5.1 және 6.0 нұсқалары, өте үлкен мәліметтер қорымен жұмыс істегенде, өнімділік жағынан төмен болды. Бұның себебі, жартылай - бір тапсырысты бірнеше ядролы процессормен дұрыс өңдемеуінде жатты.

  • 27 қаңтарда 2010 жылы Oracle корпорациясы Sun Microsystems компаниясын сатып алды.

  • 2010 жылы, желтоқсанда MySQL Server 5.5 нұсқасы шықты. Бұған келесідей кеңейтілімдер мен қосылған жаңа мүмкіншіліктер қосылды:

InnoDB қозғалтқышы транзакция мен сілтемелер дұрыстығын қолдағандықтан, ол стандартты қозғалтқыш ретінде орнатылды.

InnoDB-ның енгізу-шығару жүйелері жақсартылды

SMP қолдауы кеңейтілді.

Семисинхрондық репликация.

SQL стандартына сәйкес, жаңа SIGNAL және RESIGNAL командалары.

Қосымша utf16, utf32 және utf8mb4 Unicode символдар жиынтығын қолдау.

"Қолданушы анықтаған партициялауға" арналған жаңа опциялар.

Нұсқалары

Болашақ шығарылымдары

MySQL Server 6.0.11-alpha нұсқасы, 6.0 нұсқаларының ішіндегі соңғысы болып 2009 жылы 22 маусымда шықты. Келесі MySQL Server жасалымдары қолданысқа шығарудың жаңа моделін қолданып, жаңа енгізілімдерді келесі шығарылымдарға кіргізеді.

2011 жылы болған MySQL қолданушылар конференциясында, MySQL 5.6 нұсқасының аралық шығарылымы жарияланды. Енгізілген жаңа функциялар мен ерекшеліктерге жақсартылған өнімділігі, тапсырыстарды оңтайландырғыш, InnoDB-да транзакция жылдамдығының арттырылуы, NoSQL-стиліндегі жаңа memcached API-лары, өте үлкен кестелерге тапсырыс беруге арналған партицияларға жақсартулар, PERFORMANCE_SCHEMA мәліметтерін қолдану арқылы репликация жасау және жүйе өнімділігін бақылау жақсартуларын кіргізуге болады. Шілдеде, келесі нұсқасы BINLOG API, топтық транзакциялық жазулар және InnoDB толық текстік іздеу функцияларымен шықты.

Лицензия және қолдау

MySQL server және клиент кітапханалары екі жақтық лицензияны қолданады. Олар 28 маусым 2000 жылдан бастап GPL лицензиясы (Oracle кейін оны FLOSS лицензиясынсыз етіп өзгертті) және ақылы лицензия негізінде шықты. Ең біріншіден, қолдауды http://dev.mysql.com/doc/refman/5.5/en/index.htmlсілтемесіндегі ресми нұсқаудан алуға болады. Қосымша, тегін қолдауларды әр түрлі IRC каналдарынан және форумдардан алуға болады. Сонымен қатар Oracle, өздерінің MySQL Enterprise өнімдері арқылы, ақылы қолдау көрсетеді. Олар қызметтері және бағаларымен ерекшеленеді.

Ішкі корпоративтік тарихы

2005 жылы қазанда, InnoDB қозғалтқышын шығаратын Финдік компания Innobase OY-ды сатып алды. Сатып алынғаннан кейін, Oracle корпорациясы MySQL AB бағдарламаларына қатысты келісім-шарттар 2006-жылы жаңартылуы немесе қайта қаралуы мүмкін деп жариялады. 2006 жылы болған MySQL қолданушылары конференциясында, MySQL өз баспасөз хабарламасында, Innobase YO және MySQL "бірнеше жылдық" кеңейтілген лицензиялық келісім шартқа отырғандығын жариялады.

2006 жылы ақпанда, Oracle корпорациясы, Berkeley DB қозғалтқышын жасайтын Sleepycat Software компаниясын сатып алды. Бұл келісімнің әсері аз болды, өйткені оның қолданылуында кемшіліктер болғандықтан, оны қолдау MySQL 5.1.12 нұсқасынан бастап тоқтатылды.

2008 жылы қаңтарда, Sun Microsystems MySQL-ді 1 миллиард долларға сатып алды.

2009 жылы сәуірде, Oracle корпорациясы Sun Microsystems, сонан кейін MySQL авторлық құқықтары мен сауда белгілерін сатып алуға келісімге кірді. 2009 жылы 20 тамызда, Sun компаниясының директорлар кеңесі, акционерлері және АҚШ үкіметі жасырын түрде бұл келісімді мақұлдады. 2009 жылы 14 желтоқсанда, Oracle MySQL-ды ары қарай жақсартып, қолдауын жалғастыратынын мәлімдеді.

"MySQL-ді қорға (Save MySQL)" деп аталатын Oracle-дың MySQL-ді сатып алуына қарсы қозғалыс, MySQL-ді жасаушылардың бірі Монти Видньюс (Monty Widenius) бастады. 50 000+ бағдарламашылардан және қолданушылардан тұратын петиция, Еуропа Комиссиясынан сатып алуға жол бермеуін сұрады. Сол уақытта, бірнеше Тегін Бағдарлама (Free Software) көсемдері келісім-шарттың еш шартсыз орындалғанын айтты. Еуропа Комиссиясымен болған келіссөзде, Oracle корпорациясы, кемінде 2015 жылға дейін, MySQL-дің қазіргі қолданылып жүрген қос лицензиясын қолдайтынын шешті. Сөйтіп, 21 қаңтарда 2010 жылы Еуропа Комиссиясы еш келісім шартсыз Oracle-дің сатып алу ісін құптады.

Сол уақытта, Монти Видньюс (Monty Widenius), MariaDB атты тарауын тек GPL лицензиясы негізінде шығарды. MariaDB, MySQL 5.1 нұсқасының қайнарында жасалған. Oracle шығарған нұсқалармен үйлесімділік жағынан ол біршама жақын болса да, оның үйлесімділігін сақтап ары қарай кеңейту басты мақсат.

NuSphere компаниясымен қақтығыс

2001 жылы маусымның 15 күні Бостонда, NuSphere компаниясы, MySQL AB, TcX DataKonsult AB және олардың авторлары Майкл "Монти" Видньюс (Michael ("Monty") Widenius) және Дэвид Аксмаркты (David Axmark) АҚШ аймақтық сотына берді. 2002 жылы, MySQL AB, Progress NuSphere компаниясын, авторлық құқық және сауда белгісі бойынша, АҚШ аймақтық сотына шағымдады. NuSphere компаниясы, MySQL-дың авторлық құқығын, GPL-лицензиялы қайнарын NuSphere Gemini кестесінде еш лицензиялық келісімсіз қолданып бұзған-мыс. 27 ақпанда 2002 жылы, Пэтти Сэрис (Patti Saris) қазымен болған алдын-ала қаралудан кейін, екі жақ бір-бірімен шешім сұхбатына отырып, шешім қабылдады. Сот тыңдауынан кейін, FSF (Free Software Foundation) былай деп түсінік берді: "Қазы Сэристің, GNU GPL лицензиясының толық күші бар және жойылмас лицензия екендігіне көзі жетті."

Тарамдары

  • Drizzle – cloud-нарығына және web-инфраструктурасына бағытталған тарам. Бағдарламашылар оны: "MySQL-дің кішкентай, жеңіл және тез нұсқасы" деп атайды. Бұл нұсқадан - сақталған процедуралар, тапсырыстар кэшы, дайындалған тапсырыстар, көріністер және триггерлер сияқты функциялар мен мүмкіншіліктер алынып тасталған соң, MySQL серверімен үйлесімділікті сақтамайды.

  • MariaDB – қоғамдастық жасаған және онымен қолдау көрсетілетін MySQL тарамы. Oracle MySQL-ды сатып алғаннан кейін, MySQL-дің лицензия статусы ары қарай қалай болатыны белгісіз болғандықтан, бұл тарам соған қарсы GPL-лицензиялы түрде қарсы шығарылған. MySQL-дің командалары, кітапханалары және бинарлы файлдарымен үйлесімділік сақтап, MySQL-дың орнына қолданылатындай етіп жасау - MariaDB-ның басты мақсаттарының бірі. MariaDB-да InnoDB-қозғалтқышының орнына XtraDB қозғалтқышы қолданылады.

  • Percona Server – XtraDB қозғалтқышын қолданатын тарам. Бұл MySQL-дың кеңейтілген және онымен толық үйлесімділігі бар тарам. Қосымшаларына және мүмкіншіліктеріне кіретіндер - пайдалы жаңа функциялар, қосымша өнімділік және жүйені қолдану мен өнімділік-ті анализдеуге арналған құралдарды атауға болады.

  • OurDelta – MariaDB, Percona және Google сияқсы тарамдардан алынған өзгертулер мен түзетулерден құралған MySQL тарамы.

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]