1.12. Altres utilitats de MySQL
Juntament amb l’inventari d’ordres que interactuen amb la nostra base de dades emprant el llenguatge SQL, el SGBD MySQL proporciona un conjunt d’aplicacions elementals per assistir-nos a l’hora de treballar amb el sistema.
Per exemple, l’ordre help
mostra per pantalla un breu manual d’ajuda sobre cada instrucció de MySQL.
Per poder paginar, pantalla a pantalla, sobre les entrades del manual hem d’executar abans l’aplicació pager. Aquesta ordre ens permet vincular una aplicació de paginació del terminal de Linux amb l’intèrpret de MySQL (per exemple, el programa more).
mysql> pager more; PAGER set to 'more' mysql> help DROP TABLE; Name: 'DROP TABLE' Description: Syntax: DROP [TEMPORARY] TABLE [IF EXISTS] tbl_name [, tbl_name] ... [RESTRICT | CASCADE] DROP TABLE removes one or more tables. You must have the DROP privilege for each table. All table data and the table definition are removed, so be careful with this statement! If any of the tables named in the argument list do not exist, MySQL returns an error indicating by name which nonexisting tables it was unable to drop, but it also drops all the tables in the list that do exist. -- More --
L’ordre source
permet executar fitxers de text que inclouen ordres MySQL amb la seqüència d’instruccions precises per realitzar una determinada tasca. Per exemple, podem editar un fitxer de text des del nostre terminal amb les primeres ordres que executem en entrar en el sistema:
USE cataleg; SHOW TABLES; DESCRIBE gens; --------------------------------------------------------- mysql> source ordres.sql; Database changed +--------------------+ | Tables_in_cataleg | +--------------------+ | anotacions | | funcions | | gens | | genomes | +--------------------+ 4 rows in set (0.00 sec) +--------------+------------------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +--------------+------------------+------+-----+---------+-------+ | nom | varchar(20) | NO | PRI | NULL | | | cromosoma | varchar(5) | YES | | NULL | | | cadena | varchar(1) | YES | | NULL | | | inici | int(11) | YES | | NULL | | | final | int(11) | YES | | NULL | | | proteina | varchar(20) | YES | | NULL | | | especie | varchar(100) | YES | MUL | NULL | | +--------------+------------------+------+-----+---------+-------+ 7 rows in set (0.00 sec)
L’ordre status
permet veure la configuració del sistema:
mysql> status; mysql Ver 14.14 Distrib 5.7.17, for Linux (i686) using EditLine wrapper Connection id: 7 Current database: cataleg Current user: student@localhost SSL: Not in use Current pager: more Using outfile: '' Using delimiter: ; Server version: 5.7.17-0ubuntu0.16.04.1 (Ubuntu) Protocol version: 10 Connection: Localhost via UNIX socket Server characterset: latin1 Db characterset: latin1 Client characterset: utf8 Conn. characterset: utf8 UNIX socket: /var/run/mysqld/mysqld.sock Uptime: 4 hours 14 min 12 sec Threads: 1 Questions: 101 Slow queries: 0 Opens: 129 Flush tables: 1 Open tables: 42 Queries per second avg: 0.006
Si en algun instant necessitem accedir al terminal de Linux, podem emprar l’ordre system per invocar les seves ordres des de l’interior de MySQL:
mysql> system (ls /home/student); Desktop Documents Downloads Music Pictures Public Templates Videos mysql> system (cat ordres.sql); USE cataleg; SHOW TABLES; DESCRIBE gens;