Este es el comando mysqlmetagrep que se puede ejecutar en el proveedor de alojamiento gratuito de OnWorks utilizando una de nuestras múltiples estaciones de trabajo en línea gratuitas, como Ubuntu Online, Fedora Online, emulador en línea de Windows o emulador en línea de MAC OS.
PROGRAMA:
NOMBRE
mysqlmetagrep - Definiciones de objetos de base de datos de búsqueda
SINOPSIS
mysqlmetagrep [opciones] [patrón | servidor] ...
DESCRIPCIÓN
Esta utilidad busca objetos que coincidan con un patrón determinado en todos los servidores especificados
usando instancias del --servidor opción. Produce una salida que muestra la coincidencia
objetos. Por defecto, el primer argumento de no opción se toma como el patrón a menos que el
--patrón se da la opción. Si el --patrón se da la opción, todos los argumentos que no son de opción son
tratadas como especificaciones de conexión.
Internamente, la utilidad genera una declaración SQL para buscar las tablas necesarias en
de la forma más INFORMACIÓN_SQUEMA base de datos en los servidores designados y la ejecuta a su vez antes
recogiendo el resultado e imprimiéndolo como una tabla. Utilizar el --sql opción de tener la utilidad
mostrar la declaración en lugar de ejecutarla. Esto puede resultar útil si desea alimentar
salida de la declaración a otra aplicación como el mysql monitor.
El servidor MySQL admite dos formas de patrones al hacer coincidir cadenas: SQL Simple Patterns
(usado con el COMO operador) y expresiones regulares POSIX (utilizadas con el REGEXP
operador).
De forma predeterminada, la utilidad utiliza COMO operador para que coincida con el nombre (y, opcionalmente, el
cuerpo) de objetos. Usar el REGEXP operador en su lugar, utilice el --expresa regular .
Tenga en cuenta que desde el REGEXP El operador realiza una búsqueda de subcadenas, es necesario anclar
la expresión al comienzo de la cadena si desea hacer coincidir el comienzo de la
cadena.
Para especificar cómo mostrar la salida, utilice uno de los siguientes valores con el --formato
opción:
· cuadrícula (Por defecto)
Muestra la salida en formato de cuadrícula o tabla como la del mysql monitor.
· csv
Muestra la salida en formato de valores separados por comas.
· de la pestaña.
Muestra la salida en formato separado por tabulaciones.
· vertical
Muestra la salida en formato de una sola columna como el del comando \ G para el mysql
monitor.
Patrones simples de SQL
Los patrones simples definidos por el estándar SQL consisten en una cadena de caracteres con dos
caracteres que tienen un significado especial:% (porcentaje) coincide con cero o más caracteres y _
(guión bajo) coincide exactamente con un carácter.
Por ejemplo:
· 'Mats%'
Coincide con cualquier cadena que comience con 'mats'.
· '% Kindahl%'
Coincide con cualquier cadena que contenga la palabra 'kindahl'.
· '% _'
Coincide con cualquier cadena que consta de uno o más caracteres.
Expresiones regulares POSIX
Las expresiones regulares POSIX son más poderosas que los patrones simples definidos en SQL
estándar. Una expresión regular es una cadena de caracteres que, opcionalmente, contiene caracteres.
con significado especial:
· .
Coincide con cualquier personaje.
· ^
Coincide con el comienzo de una cadena.
· $
Coincide con el final de una cuerda.
· [axial]
Match a, xo y.
· [af]
Coincidir con cualquier personaje en el rango a a f (es decir, a, b, c, d, eo f).
· [^ axy]
Coincide con cualquier personaje exceptoa, xo y.
· a*
Coincidir con una secuencia de cero o más a.
· a+
Coincidir con una secuencia de uno o más a.
· a?
Coincidir con cero o uno a.
· ab | cd
Match ab or cd.
· un {5}
Coincide con cinco instancias de a.
· un {2,5}
Coincidir de dos a cinco instancias de a.
· (abc) +
Coincide con una o más repeticiones de abecedario.
Este es solo un breve conjunto de ejemplos de expresiones regulares. Se describe la sintaxis completa
en la categoría Industrial. MySQL manual[1], pero a menudo se puede encontrar en expresiones regulares(7).
OPCIONES
mysqlmetagrep acepta las siguientes opciones de la línea de comandos:
· --ayuda
Muestre un mensaje de ayuda y salga.
· --Cuerpo, -b
Busque el cuerpo de los programas almacenados (procedimientos, funciones, disparadores y eventos). los
el valor predeterminado es coincidir solo con el nombre.
· --Database =
Busque solo en bases de datos que coincidan con este patrón.
· --Format = , -f
Especifique el formato de visualización de salida. Los valores de formato permitidos son cuadrícula, csv, de la pestaña.y
vertical. El valor predeterminado es cuadrícula.
· --Object-types = , --search-objects =
Busque solo los tipos de objeto nombrados en tipos, que es una lista separada por comas de uno o
más de los valores procedimientos, función, evento, detonante, mesay base de datos.
El valor predeterminado es buscar en objetos de todo tipo.
· --Patrón = , -e =
El patrón que se utilizará al combinar. Esto es necesario cuando el primer argumento de no opción
parece una especificación de conexión en lugar de un patrón.
Si --patrón se da la opción, el primer argumento de no opción se trata como un
especificador de conexión, no como un patrón.
· --Regexp, --basic-regexp, -G
Realice coincidencias de patrones con el REGEXP operador. El valor predeterminado es usar COMO for
pareo. Esto afecta al --base de datos y --patrón .
· --Servidor =
Información de conexión para que un servidor busque en el formato:
<usuario> [:passwd>] @fortaleza> [:Puerto>] [:enchufe>] oruta de acceso> [:Puerto>] [:enchufe>]. Usar
esta opción varias veces para buscar en varios servidores.
· --Sql, --print-sql, -p
Imprima en lugar de ejecutar el código SQL que se ejecutaría para encontrar todas las coincidencias
objetos. Esto puede ser útil para guardar la instrucción para su posterior ejecución o para usarla como
entrada para otros programas.
· --versión
Muestra la información de la versión y sale.
NOTAS
Para el --formato opción, los valores permitidos no distinguen entre mayúsculas y minúsculas. Además, los valores
se puede especificar como cualquier prefijo inequívoco de un valor válido. Por ejemplo, --format = g
especifica el formato de la cuadrícula. Se produce un error si un prefijo coincide con más de un valor válido.
La ruta a las herramientas del cliente MySQL debe incluirse en la variable de entorno PATH en
para utilizar el mecanismo de autenticación con rutas de acceso. Esto permitirá que la utilidad
utilice las herramientas my_print_defaults que se requieren para leer los valores de la ruta de acceso de la
archivo de configuración de inicio de sesión (.mylogin.cnf).
EJEMPLOS
Encuentre todos los objetos con un nombre que coincida con el patrón 't_' (la letra t seguida de cualquier
carácter único):
$ mysqlmetagrep --pattern = "t_" --server = mats @ localhost
+ ------------------------ + -------------- + --------- ----- + ----------- +
| Conexión | Tipo de objeto | Nombre del objeto | Base de datos |
+ ------------------------ + -------------- + --------- ----- + ----------- +
| tapetes: * @ localhost: 3306 | TABLA | t1 | prueba |
| tapetes: * @ localhost: 3306 | TABLA | t2 | prueba |
| tapetes: * @ localhost: 3306 | TABLA | t3 | prueba |
+ ------------------------ + -------------- + --------- ----- + ----------- +
Para encontrar todos los objetos que contienen 't2' en el nombre o el cuerpo (para rutinas, disparadores y
eventos):
$ mysqlmetagrep -b --pattern = "% t2%" --server = mats @ localhost: 3306
+ ------------------------ + -------------- + --------- ----- + ----------- +
| Conexión | Tipo de objeto | Nombre del objeto | Base de datos |
+ ------------------------ + -------------- + --------- ----- + ----------- +
| root: * @ localhost: 3306 | TRIGGER | tr_foo | prueba |
| root: * @ localhost: 3306 | TABLA | t2 | prueba |
+ ------------------------ + -------------- + --------- ----- + ----------- +
En la salida anterior, el nombre del disparador no coincide con el patrón, pero se muestra
porque su cuerpo lo hace.
Esto es lo mismo que en el ejemplo anterior, pero usando el REGEXP operador. Tenga en cuenta que en el
patrón no es necesario agregar comodines antes o después de t2:
$ mysqlmetagrep -Gb --pattern = "t2" --server = mats @ localhost
+ ------------------------ + -------------- + --------- ----- + ----------- +
| Conexión | Tipo de objeto | Nombre del objeto | Base de datos |
+ ------------------------ + -------------- + --------- ----- + ----------- +
| root: * @ localhost: 3306 | TRIGGER | tr_foo | prueba |
| root: * @ localhost: 3306 | TABLA | t2 | prueba |
+ ------------------------ + -------------- + --------- ----- + ----------- +
DERECHOS DE AUTOR
NOTAS
1. Manual de MySQL
http://dev.mysql.com/doc/mysql/en/regexp.html
Use mysqlmetagrep en línea usando los servicios de onworks.net