Configurarea MySQL

Schimbarea setului de caractere
Implicit, MySQL foloseste setul de caractere ISO-8859-1 Latin1 cu sortarea in orinea limbii suedeze. Pentru a schimba acest set implicit de caractere, foloseste comanda:
mysql> ./configure --with-charset=CHARSET
unde CHARSET poate fi big5, cp1251, cp1257, czech, danish, dec8, dos, euc_kr, gb2312, gbk, german1, hebrew, hp8, hungarian, koi8_ru, koi8_ukr, latin1, latin2, sjis, swe7, tis620, ujis, usa7, or win1251ukr.

Pentru a adauga un nou set de caractere decide daca setul e unul simplu sau complex (are nevoie de sau nu de suport multi-byte) si:
I.Set simplu:

  1. Adauga SETUL la sfarasitul fisierului `sql/share/charsets/Index' si atribuie-i un numar.
  2. Creaza un fisier `sql/share/charsets/SETUL.conf'. (Foloseste ca model `sql/share/charsets/latin1.conf').
  3. Adauga numele 'SETUL' la listele CHARSETS_AVAILABLE and COMPILED_CHARSETS din 'configure.in'.
II.Set complex:
  1. Creaza fisierul `strings/ctype-SETUL.c'.
  2. Adauga SETUL la sfarasitul fisierului `sql/share/charsets/Index' si atribuie-i un numar.
  3. Plaseaza un comentariu in partea de sus a fisierului creat la 1. :
    /*
     * This comment is parsed by configure to create ctype.c
     * .configure. number_MYSET=MYNUMBER
     * .configure. strxfrm_multiply_MYSET=N
     * .configure. mbmaxlen_MYSET=N<
     */
  4. Creaza urmatoarele functii: my_strncoll_MYSET(), my_strcoll_MYSET(), my_strxfrm_MYSET(), my_like_range_MYSET().
  5. Adauga numele 'SETUL' la listele CHARSETS_AVAILABLE and COMPILED_CHARSETS din 'configure.in'.

Mesaje de eroare in alte limbi
mysqld poatge da mesaje de eroare in urmatoarele limbi: ceha, daneza, engleza (implicit), estoniana, franceza, germana, greaca, italiana, japoneza, koreana, maghiara, norvegiana, norvegiana-ny, olandeza, poloneza, portugheza, romana, rusa, slovaca, spaniola si suedeza.

Pentru a porni mysql in limba romana:
shell> mysqld --language=romanian
sau
shell> mysqld --language=/usr/local/share/romanian
Pentru a actualiza fisierul cu mesaje de eroare, modifica `errmsg.txt' si executa:
shell> comp_err errmsg.txt errmsg.sys


Utilitarele MySQL


Sunt niste programe-client care se folosesc pentru a construi, configura si intretine bazele de date.
myisamchk
Descrie, verifica si optimizeaza tabele.
make_binary_release
Face un pachet binar cu dstrubutia MySQL.
msql2mysql
Converteste programe mSQL in MySQL.
mysql
mysqlaccess
Verifica privilegii de acces pentru o combinatie de gazda-utilizator-baza de date.
mysqladmin
mysqlbug
Genereaza un raport cu defectge (bugs) gasite in MySQL.
mysqld
Daemon-ul SQL.
mysqldump
mysqlimport
mysqlshow
Afiseaza informatii despre baze de date, tabele, coloane, indecsi.
mysql_install_db
Creaza tabelele de privilegii.
replace
Program utilitar care inlocuieste un sir de caractere cu al sir dintr-un anumit fisier.

shell> replace a b b a -- fisier1 fisier2 ...
safe_mysqld
Porneste daemon-ul mysqld cu unele optiuni de siguranta.

mysql.exe


Este interfata in linie de comanda a MySQL-ului si-ti permite sa rulezi comenzi SQL sau comenzi specifice MySQL. Sintaxa este:
mysql [options] [database name] [<inputfile] [>outputfile]
Tasteaza help pentru a vedea unele facilitati ale mysql:
help    (\h)    Afiseaza acest text
?       (\h)    Sinonim pentru ‘help’
clear   (\c)    "Curata" ecranul
connect (\r)    Reconectare la server
edit    (\e)    Comanda edit cu $EDITOR
exit    (\q)    Iesire din  mysql
go      (\g)    Trimite comanda la server
ego     (\G)    Trimite comanda si afiseaza rezultatul vertical
print   (\p)    Tipareste comanda curenta
quit    (\q)    Iesire din mysql
rehash  (\#)    Reconstruieste hash-ul
status  (\s)    Status info
use     (\u)    Foloseste o baza de date

** nou in versiunea 3.23:
source  (\.)    Executa un fisier script .sql

Alte optiuni pentru programul-client mysql:
-?  --help          Help
-B  --batch         Afiseaza rezultatele cu TAB ca separator.
-D, --database=..   Baza de date folosita
 e  --execute=...   Executa comanda si iese
-E  --vertical      Afisare veritcala a rezultatelor
-f  --force         Continua chiar daca apar erori
-h  --host=...      Conectare la gazda specificata
-H  --html          Produce iesiri in  format HTML.
-L  --skip-line-
      numbers       Nu afiseaza numere de linii in cazul erorilor
-n  --unbuffered    Goleste buffer-ul dupa fiecare interogare
-p[password]
   --password[=...] Parola care va fi folosita
-P  --port=...      Portul TCP/IP  folosit
-q  --quick         Tipareste rezultatul linie cu linie
-r  --raw           Scrie numele de campuri cu tot cu caracterele de escape
-t  --table         Iesiri in formatul tabeleiOutput in table format. This is default in
                               non-batch mode.
-u  --user=#        Utilizatorul care intra nu e cel curentUser for login if not current user.
-w  --wait          Asteapta si reincearca conectarea

mysqladmin


Este utilitarul pentru sarcini administrative. Sintaxa:
mysqladmin [OPTIONS] command command...
unde comenzile pot fi:
create databasename
drop databasename
extended-status       Mesaj extins despre status-ul server-ului
flush-hosts
flush-logs
flush-tables
flush-privileges      Reincarca tabelele de privilegii
kill id,id,...        Termina thread-urile mysql
password newpassword  Schimba parola
ping                  Verifica daca mysgld e pornit
processlist           Lista proceselor active
reload                Reincarca tabelele de privilegii
refresh
shutdown
status
variables             Afiseaza variabilele disponibile
version               Versiunea MySQL
slave-start           Starteaza thread-ul slave
(nou in  v3.23)
slave-stop            Opreste thread-ul slave.
(nou in v3.23)
-?             --help
-#             --debug=...
-f             --force            Continua chiara daca apar erori
-h             --host=#
-p[...]        --password[=...]
-P             --port=...
-I             --sleep=sec        Executa comenzile in continuu cu o pauza intre
-r             --relative         Arata diferentele obtinute
-s             --silent           Iesire daca nu e permisa conecatarea
-t             --timeout=...      Timeout pentru conectare
-w             --wait[=retries]
-W             --pipe
-E             --vertical

Exemplu:
mysqladmin proc stat
+----+-------+-----------+----+-------------+------+-------+------ +
| Id | User  | Host      | db | Command     | Time | State | Info  |
+----+-------+-----------+----+-------------+------+-------+------ +
| 6  | monty | localhost |    | Processlist | 0    |       |       |
+----+-------+-----------+----+-------------+------+-------+------ +
Uptime: 10077  Threads: 1  Questions: 9  Slow queries: 0  Opens: 6
Flush tables: 1  Open tables: 2  Memory in use: 1092K  Max memory
used: 1116K

mysqldump


Este un utilitar pentru mutarea/stergerea informatiilor din tabele. Sintaxa:
mysqldump [OPTIONS] database [tables]
Folosire (pentru backup):
mysqldump --opt mydatabase > backup-file.sql
Poti citi inapoi in MySQL informatiile cu:
mysql mydatabase < backup-file.sql
Optiuni:
-?                  --help
-a                  --all
--add-locks                             Adauga LOCK TABLES inainte si UNLOCK
                                        TABLE dupa fiecare dump
--add-drop-table
--allow-keywords
-c                  --complete-insert
--delayed
-F                  --flush-logs
-f                  --force
-h                  --host=..
-l                  --lock-tables
-t                  --no-create-info
-d                  --no-data
--opt
-p[...]             --password[=...]
-P                  --port=port_num
-q                  --quick
-T path-to-         --tab=path-to-     Creaza un fisier .sql si un fisier .txt cu continutul
some-directory,       some-directory   tabelei
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-enclosed-by=...
--fields-escaped-by=...
--lines-terminated-by=...
-u user_name,        --user=
                     user_name
-w                   --where=
                     ’where-
                     condition’

mysqlimport

Este o interfata in linie de comanda pentru comanda SQL LOAD DATA INFILE. Sintaxa:
mysqlimport [options] database textfile1 [textfile2....]
Folosire (cu mysqldump):
mysqldump -T . tracking tabela1
mysql tracking <tabela1.sql
mysqlimport tracking tabela1.txt
Optiuni:
-?                       --help
-d                       --delete           Goleste tabela inainte de import
--fields-terminated-by=...
--fields-enclosed-by=...
--fields-optionally-
enclosed-by=...
--fields-escaped-by=...
--lines-terminated-by=...
-f                       --force
-h host_name             --host=host_name
-l                       --lock-tables
-L                       --local            Fisierele sunt pe gazda clientului
-p[...]                  --password[=...]
-P port_num              --port=port_num
-I                       --ignore           Pentru inregistrari duplicat (nu sunt luate in seama)
-r                       --replace          Inregistrarile duplicat sunt inlocuite cu noua 												    versiune
-s                       --silent
-u user_name             --user=user_name
-c                       --columns=...      Campurile care vor fi actualizate


excl Trebuie specificat neaparat una din optiunile --ignore sau --replace, altfel, cand se vor gasi inregistrari duplicat in tabela si-n fiserul text se va genera o eroare.
InapoiInainte

Home Introducere Instalarea Utilizare MySQL Limbajul MySQL Administarea MySQL Configurarea MySQL MySQL si PHP Quiz MySQL Linkuri utile Contacteaza-ma..