Қазіргі таңда Интернет ақпараттық өзара қарым-қатынастың шынайы түрдегі негізгі факторы болып отыр, ал шындықты елемеу мүмкін емес


MySQL мәліметтер базасын басқару жүйесі



бет11/15
Дата14.11.2022
өлшемі5,59 Mb.
#158137
1   ...   7   8   9   10   11   12   13   14   15
Байланысты:
Акмарал жумысы2013 13 05 2013

2.3.1 MySQL мәліметтер базасын басқару жүйесі
Компьютердің мәліметтер базасында сақталынған мәліметтерді жазу, іріктеу және өндеу үшін мәліметтерді базасын басқару жүйесі қажет, MySQL сондай бағдарламалық қамтама. Компьютер үлкен көлемді мәліметтерді өңдеуді жақсы орындағандықтан, мәліметтер базасын басқару есептеуде ортаңғы роль атқарады. Мұндай басқару, басқа қосымшалардың құрамына кіретін жеке утилит түрінде, код түрінде әртүрлі іске асуы мүмкін. MySQL – реляциондақ мәлметтерді басқару жүйесі. Реляциондақ мәліметтер базасында бар мәліметтер бір түйінде сақталмайды, ал жеке кестелерде сақталынады осының арқасында жылдамдықпен икемділікпен ұтуға болады. Кестелер бір бірімен қатынас көмегімен байланысады, соның арқасында бірнеше кестеден сұрау орындалған кезде біріктіру мүмкіндігі қамтамасыз етіледі. SQL тілін MySQL жүйесінің бөлігі ретінде құрамаланған сұраулар тілі ретінде сипаттауға болады, сонымен қатар мәліметтер базасына рұқсат алу үшін қолданылатын ең көп таралынған стандартты тіл. MySQL бағдарламалық қамтамасы – бұл ашық кодты бағдарламалық қамтама. Ашық кодты бағдарламалық қамтама дегеніміз оны кез келген жобалаушы модификациялай алады. Осындай бағдарламалық қаматаманы Internet арқылы алуға жіне тегін қолдануға болады. Бұл жағдайда әрбір қолданушы алдынғы кодын үйрене алады және өзінің талаптарына қарай өзгерте алады. MySQL тілі қолдануға өте тез, жеңіл және тиімді тіл. MySQL қолданушымен тығыз қарым қатынаста жасалынған, ыңғайлы мүмкіндіктерге ие. Алғашында MySQL сервері, сол кездегі бар ұқсас серверлермен салыстырғанда жоғарға жылдамдақты жұмыспен қамтамасыз ету мақсатында, үлкен мәліметтер базасын басқару үшін жасалынған. Енді міне бірнеше жылдар аралығында бұл сервер жоғарғы талаптағы өндірістік эксплуатацияда да табысты қолданылады. MySQL әрдайым жаңартылса да , қазірдің өзінде ол тиіді функциялар жиынтығымен қамтамасыз етеді.Өзінің тиімділігінің, жылдамдығынің және қауіпсіздігінің арқасында MySQL Internet арқылы мәліметтер базасына рұқсат алу үшін өте ыңғайлы.
MySQL – дің ерекшеліктерінің қысқаша тізімі
1) Бір уақытта мәліметтер базасымен жұмыс істейтін қолданушылардың шексіз саны қолданылады;
2) Кестедегі жолдың саны 50 млн. – ға дейін жетуі мүмкін;
3) Команданың жылдам орындалуы. Бар серверлердің ішінде MySQL ең жылдам сервер болып табылады;
4) Қауіпсіздіктің қарапайымдылығы мен тиімділігі;
5) Салынған сұраныстың қолданылуы, SELECT * FROM table1 WHERE id IN (SELECT id FROM table2) түрінде. Бұндай мүмкіншілік 3.23 нұсқасында болады;
6) Транзакцияны қолдау іске асырылмаған. Ауыстырылып қолданылуға LOCK/UNLOCK ұсынылады;
7) (Foreign) сыртқы кілттің көмегі жоқ;
8) Триггер мен сақталған процедуралардың көмегі жоқ.
Құрушылардың айтуы бойынша, 2 – 4 пункттар жоғары жылдамдыққа жету мүмкіндігіне ие болды. Олардың жүзеге асуы сервердің жылдамдығын азайтады. Web – қосымшаны құруда бұл мүмкіндіктер қиын болып табылмайды.
MySQL пакетінің артықшылықтарын атап кетейік:
- Дәлдік бір уақыттағы бірнеше сұранысты қолдану;
- Ауысу ұзындығы мен фиксирленуді жазу;
- ODBC драйвері алғашқы кмплекте;
- Парольдің иілгіш жүйесі;
- Кестеде 16 кілтке дейін. Әрбір кілт 15 полядан тұра алады;
- CREATE операторында арнайы және кілттік поляны қолдану;
- C және Perl тілдері мен интерфейс;
- Жадының жылдам жүйесі;
- Кестені жөндеу мен тексеру утилиті (isamchk);
- Барлық мәліметтер ISO8859_1 форматында сақталады.
SQL - Structured Query Language – дің қысқартылуы (сұраныстардың құрылымдық тілі). SQL реляционды мәліметтер базасымен жұмыс істеу үшін жасалған. Ол қолданушыға мәліметтер базасымен жұмыс істеуге (қарау, іздеу, қосуға және ақпаратты басқаруға) мүмкіндік береді. MySQL ANSI 92 SQL спецификасына сәйкес келеді.
MySQL – интернеттегі ең кең таралған және ең атақты ақпарат базасын басқару жүйесі. Ол үлкен көлемді ақпаратпен жұмыс істеуге арналмаған, бірақ үлкен, кіші интернет сайттар үшін өте ыңғайлы жүйе.
MySQL үлкен және орташа қосымшалармен жұмыс істеуге өте ыңғайлы. Сервердің негіздері көптеген платформаларда компиляция жасайды. Сервердің толығырақ мүмкіндіктері өнімділікті арттыратын көпағымдылықтың қолдауы бар Unix-серверлерде байқалады.
РНР мен қарым – қатынасы.
MySQL жұмыстың жоғары жылдамдылығымен, сенімділігімен, ыңғайлылығымен ерекшеленіледі. Онымен жұмыс істеу үлкен қиындықтар тудырмайды. MySQL сервердің қолдауы РНР жеткізілуіне автоматты түрде қосылады. Тегінділігі де үлкен роль атқарады. MySQL ортақ GNU (GPL, GNU Public License) лицензиясы негізінде таратылады. Бұрын ақпаратты ұзақ уақыт сақтау үшін файлдармен жұмыс істелетін: бірнеше жолдар санына енгізіп, келесі жұмыстар үшін алынатын. Ақпаратты ұзақ уақытқа сақтау мәселесі Web – қосымшаларын бағдарламалауда жиі кездеседі: қолданушыларды санау, хабарламаларды форумда сақтау, сайттағы ақпаратты арақашықтықтан басқару т.б.
Файлдармен маманданған түрде жұмыс істеу үлкен еңбекті талап етеді, оларға ақпаратты енгізуді, олардың сортталуын, алынуын қадағалау керек, сонымен қатар бұл істердің бәрі Unix нұсқасынының бірі тұратын хост – провайдердің серверінде жүзеге асатынын ұмытпау керек, яғни файл құқығы мен оларды орналастыруды да ойластыру керек. Сонымен қатар код көлемі елеулі түрде өседі және бағдарламада қате жіберу өте оңай. Осы мәселелердің барлығын мәліметтер базасын қолдану шешеді. Мәліметтер базасы ақпараттың қауіпсіздігі мен сортталуын өздері қадағалайды және ақпаратты алу мен орнатуды бір жолдың көмегімен жүзеге асыруға мүмкіндік береді. Мәліметтер базасын қолданумен код жинақы болып шығады, және оны әлдеқайда жеңілірек жөндейді. Сонымен қатар, жылдамдықты да ұмытпау керек – ақпаратты мәліметтер базасынан алған файлдан алғанға қарағанда әлдеқайда тезірек жүзеге асады. MySQL мәліметтер базасының ақпаратын сақтауда қолданылатын РНР – ге қосымша файлдарда салынған қосымшаларға қарағанда әрқашан тезірек істейді. Өйткені мәліметтер базасы С++ тілінде жазылған және қатқыл дискте мәліметтер базасына қарағанда нәтижелі жұмыс істейтін PHP бағдарламасына жазу – шешілмейтін мәселе, өйткені РНР бағдарламалары С++ бағдарламаларынан баяуырақ жұмыс істейді, себебі РНР – интерпретатор, ал С++ - компилятор.
Осылайша, мәліметтер базасының басты артықшылығы қатты дискпен жұмыстың бәрін өз мойнына алады және өте жоғары деңгейде жүзеге асырады. MySQL мүмкіншіліктерінің қысқаша тізімі:

  1. Бір уақытта мәліметтер базасымен жұмыс істейтін тұтынушылардың шексіз санына қызмет көрсетіледі.

  2. Кестедегі жолдар саны 50 млн. дейін жетуі мүмкін.

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

  4. Қауіпсіздіктің қарапайым және нәтижелі жүйесі.

MySQL негізінде өте жылдам сервер, бірақ бұған жету үшін өңдеушілер МББЖ – нің реляциалы талаптарынан бас тартуына тура келді. MySQL – де:

  1. SELECT * FROM table1 WHERE id IN (SELECT id FROM table2) секілді енгізілген сұраныстар жұмыс істемейді. Мұндай мүмкіндік 3.23 версиясында болады деп айтылуда.

  2. Транзакцияны қолдау жүзеге аспаған. Орнына LOCK/UNLOCK TABLE қолдану ұсынылады.

  3. Сыртқы(foreign) кілттер жұмыс істемейді.

  4. Триггер және сақталатын үрдістер істемейді.

  5. Көрсетілім (VIEW) жұмыс істемейді. 3.23 версиясында көрсетілім мүмкіндігі іске асады деп жоспарлануда.

Құрастырушылар сөзі бойынша дәл 2-4 пунктер жоғары жылдамдыққа қол жеткізуге мүмкіндік берді. Оларды жүзеге асыру сервердің жылдамдылығын елеулі түрде төмендетеді. Бұл мүмкіндіктер Web – қосымшаларды жасағанда қиын емес және осыған орай жылдамдық пен бағасының арзандығына байланысты серверге үлкен танымалдылық әкелді. Төменде MySQL бағдарламалық қамтаманың маңызды сипаттамалары көрсетілген:
Ішкі сипаттамалар және тасымалдануы:

  • С және С++ - те жазылған. Көптеген түрлі компиляторларда тестіленген;

  • Түрлі платформаларда жұмыс істейді;

Тасымалдануды қамтамасыз етуде GNU Automake, Autoconf и Libtool қолданылады;

  • C, C++, Eiffel, Java, Perl, PHP, Python, Ruby және Tcl – ге арналған API;

  • Ядро ағымын пайдалана отырып толығымен, көпағымды. Бұл дегеніміз, мұндай мүмкіншілік қамтамасыз етілсе бірнеше процессормен жұмысты оңай ұйымдастыруға болады;

  • В – бұтақ негізінде индексті сығумен өте тез дисктік кестелер;

  • Көлемді тарату жүйесінің ағымындағы өте тез негіздеуші;

  • Біржолды мультибайланыстардың (one-sweep multi-join) оптималды әдісін қолданатын өте тез байланыс;

  • Уақытша кестелер ретінде қолданылатын көлемдегі хеш – кестелер;

  • Жақсы оптимизацияланған класс кітапханалары көмегімен жүзеге асқан SQL – функциялар. Сондықтан олар мүмкіншілігінше тез жұмыс істейді. Әдетте сұранысты инициализациялағаннан кейі көлемді тарату мүлдем жасалынбайды;

  • MySQL – код Purify, Valgrind және GPL – құралдарының бірін қолдану арқылы тестілеуден өткен.

Бағана түрлері:

  • Үлкен сан: белгімен/белгісіз бүтінсандық, ұзындығы 1,2,3,4 және 8 байт;

  • Бекітілген және айнымалы ұзындықты жазбалармен;

  • Барлық бағаналардың үндеместен мағынасы бар.INSERT көмегімен кестенің көп бағаналарын қоюға болады; мағына берілмеген бағаналарға мағыналар үндеместен беріледі;

  • Операторлам мен SELECT- и WHERE-ді сауал жөнінде толық қолдау көрсету;

  • SQL GROUP BY және ORDER BY операторларына толық қолдау көрсету;

  • LEFT OUTER JOIN және RIGHT OUTER JOIN -ді ANSI SQL және ODBC синтаксисімен;

  • SQL92 стандартына сәйкес кестелер мен бағаналарға жалған аттар рұқсат етілген;

  • DELETE, INSERT, REPLACE, және UPDATE өзгертілген бағана сандарын қайтарады. Оның орнына сәйкес келген бағаналарды беруге болады. Ол үшін сервермен байланыс кезінде жолақ орнату қажет;

  • MySQL үшін арнайы болып табылатын SHOW командасын мәліметтер базасы, кесте және индекс туралы ақпарат алу үшін қолдануға болады. Оптимизатордың сұранысты қалай орындайтынын анықтау үшін EXPLAIN командасын қолдануға болады;

  • Функция аттары бағандар мен кестелер аттарымен дауласпайды. Мысалы, ABS бағананың дұрыс аты болып табылады. Функцияны шақыру үшін тек бір ғана шектеу бар: функция аты мен келесі ашылатын жақша арасында бос орын болмауы керек.

Қауіпсіздік:

  • Жүйе құпия сөз бен жеңілдіктер негізінде құрылған, соған орай қауіпсіздік пен ыңғайлылық қамтамасыз етіледі. Құпия сөздер қорғалған, өйткені желі арқылы берілгенде сервермен байланысқанда шешіледі.

Көлемділік және шектеулер:

  • Өте үлкен мәліметтер базасын басқару. MySQL AB компаниясы MySQL – ды кейбірі 50 миллион жазбалар бар бірнеше мәліметтер базасымен жұмыс істеу үшін қолданады. Сонымен қатар, MySQL –ді 60 000 кестемен, 5000000000 жолмен жұмыс істеу үшін қолданатын тұтынушыларды білеміз.

  • Әр кестенің 32 индексі болуы мүмкін. Әр индексте 1- ден 16 баған не баған бөлшектері болуы мүмкін. Индекстің максималды кеңдігі 500 бит (бұл көрсетілім MySQL-ді компиляциялағанда өзгеруі мүмкін). Индекс үшін CHAR немесе VARCHAR префикс полялары қолдануы мүмкін.

Жергіліктендіру:

  • Сервер клиенттер үшін қателіктер туралы хабарламаны түрлі тілдерде қамтамасыз ете алады;

  • ISO-8859-1 (Latin1), немісше, big5, ujis тағы басқа түрлі кодировкаларды жұмыс істету;

  • Барлық ақпаратты сақтау үшін таңдалған белгілер жинағы қолданылады. Қалыпты жолдары бар бағаналар үшін барлық салыстырулар белгілер регистрінің есептелуі бойынша жүргізіледі;

  • Сорттау таңдалған алфавит бойынша жүргізіледі (үндеместен шведтік қолданылады). Бұл орнатылымды MySQL серверді қосқан кезде өзгертуе болады. Өте жақсы жасалған сортталу мысалымен танысу үшін чех тілі үшін арналған сорттау кодын қолдануға болады. MySQL көптеген басқа кодтауларға қолдау көрсетеді.

Клиенттер және инструментарий:

  • Құрамында myisamchk, кестелерді қайта келтіру, оптимизация және тексеру утилитасы. Барлық функционалды мүмкіншіліктері myisamchk SQL-интерфейс арқылы да қол жетерлік;

  • Барлық MySQL – бағдарламаларды көмек алу үшін help және -? опциялары арқылы қосуға болады.





Достарыңызбен бөлісу:
1   ...   7   8   9   10   11   12   13   14   15




©engime.org 2024
әкімшілігінің қараңыз

    Басты бет