No hay una opción específica para descargar vistas.
Puedes probar lo siguiente:
mysqldump -h... -u... -p... --all-databases --routines --triggers --no-data > /root/MySQLDBSchema.sql
grep "CREATE ALGORITHM" /root/MySQLDBSchema.sql
Deberías poder ver las vistas. Esto indica que cuando volca bases de datos, la vista viene con ella.
Otro truco que puedes probar, solo para obtener solo las vistas, es este:
mysql -uroot -prootpass AN -e"select concat('SHOW CREATE VIEW ',table_schema,'.',table_name,';') from information_schema.views" | sed 's/;/\\G/g' | mysql --uroot -prootpass > /root/MySQLDBViews.sql
Darle una oportunidad !!!
--all-databases
, especifique la base de datos que desea.La mejor respuesta para esto es probablemente esta de olliiiver que he modificado ligeramente. Exporta específicamente una consulta de caída de tabla y una consulta de vista de creación o reemplazo para cada vista en el sistema, sin necesidad de perder el tiempo con ninguna tabla. La consulta de la tabla desplegable a menudo es importante, ya que a mysqldump aparentemente le gusta recrear vistas como tablas a menos que incluya cada vista en su propio parámetro --ignore-table, lo que sería molesto. Utiliza INFORMATION_SCHEMA.
Si desea convertir algo como esto en un script de shell, también le recomiendo usar el parámetro --defaults-extra-file = CREDSFILENAME, para que no necesite especificar usuario / pasar en el script.
El archivo de credenciales se ve así:
fuente