Bueno, vamos a ver en este capítulo algo que me han venido pidiendo los alumnos en muchos mensajes
privados y en consultas, que es el tema de los backups, pero por línea de comandos, eh?
Hay que hacer alguna aclaración cuando nosotros hemos aprendido a hacer un respaldo, un backup usando
jadi SQL, lo que estamos haciendo es usar una herramienta que en definitiva va a ejecutar una serie
de instrucciones en la consola de mi siku y lo va a hacer un poco más lento que si lo hacemos nosotros
directamente.
Como cualquier DBA tiene que saber a usar la consola de comandos.
Nosotros hemos visto bastante sobre esto, pero vamos a agregar un poco más que el tema de los backups.
Lo que tenemos que hacer nosotros es abrir por fuera.
Nosotros tenemos aquí en Zaidi, SQL, tenemos el para lanzar la línea de comandos, pero qué sucede?
Vamos a aprender a hacerlo por fuera para que no dependa solamente de una herramienta de software como
día se cuele.
Vamos a intentar ir a nuestra línea de comandos normal el famoso deo ese que viene en Windows.
Si ustedes en lugar de Windows tienen Linux, lo van a poder ejecutar tranquilamente de la misma manera.
Y lo que vamos a ver ahora es bueno, vamos a abrir nuestra línea de comandos.
Y aquí nosotros vamos a estar en condiciones de trabajar lo que les va a pasar a muchos, por no decir
a prácticamente todos.
Es que cuando quieran, en la línea de comandos de Windows o de Linux, introducir una instrucción de
Mitzy, les va a decir que no, no les reconoce como una instrucción del sistema operativo.
Si yo aquí coloco mi SQL me dice que no se reconoce como un comando interno.
Esto por qué ocurre?
Ocurre porque cuando nosotros generalmente instalamos el servidor de Maisy, no se ocupa el instalador
de crear las variables de entorno.
La variable de entorno que le va a decir a nuestro sistema operativo que cada vez que nosotros introduzcamos
una instrucción de mi ciclo, lo vaya a buscar a una carpeta determinada.
Cómo se hace esto de la variable entorno?
Bueno, teniendo abierto nuestro Jaidev SQL lo que ustedes tienen que ir esa a esta solapa, a la solapa
de host.
Aquí tengo la información de las bases de datos y luego tengo una solapa que dice variables.
Para qué voy a ir aquí?
Para ver dónde se ha instalado mi Maisy.
Entonces hacemos clic en variables y vamos a encontrar un una variable llamado base dir.
O sea, el directorio base de donde está nuestro másico instalado.
Aquí lo tenemos el C Program Files, mi ciclo y mi ciclo Server 8.0.
Lo único que voy a hacer aquí es copiar esto y ahora voy a ir a donde se declaran las variables de entorno
en Windows y voy a incorporar esta información.
Para hacerlo tengo que ir a mi PC a este equipo más propiedades.
Voy a entrar en las propiedades de mi equipo, voy a ir a configuración avanzada del sistema este link
de aquí debajo.
Voy a ir a este botón que dice Variables de entorno y una vez que entré en variables de entorno me voy
a ocupar de las variables del sistema.
Dentro de las variables del sistema tengo que buscar una variable que es la variable path que significa
ruta donde va a encontrar la ruta de todo el software que nosotros estamos ejecutando por línea de comando.
Entonces lo que vamos a hacer es editar esa variable.
Vamos a ver que hay muchas, muchas configuraciones y vamos a que agregar una nueva aquí donde hice
nuevo y lo único que tenemos que hacer es pegar lo que hemos copiado desde nuestro Jaidev se cuele.
Pero no solo eso, si yo hago esto no va a funcionar tampoco.
Porque?
Porque todas las instrucciones de mi línea de comandos de mi círculo están en una carpeta llamada BIN,
así que lo que hago es agregarle al final del path la palabra bin.
Le doy aceptar.
Vamos a aceptar todo.
Aceptar para que quede grabado.
Y ahora, si yo hago mi ciclo, me va a volver a dar error porque?
Porque tengo que cerrar la ventana y volverlo a abrir.
Fíjense.
Coloco mi ciclo.
Todavía no lo reconoce porque cuando abrí la ventana le soh en ese momento las variables de entorno,
así que lo voy a cerrar, voy a ir nuevamente símbolo del sistema y ahora si yo coloco mi ciclo me va
a parecer que no tengo acceso al usuario root y demás o DBC ahí.
Esto significa que sé reconocer mi ciclo.
Ya se comunicó con el servidor de El Músico.
Muy bien, vamos a hacer un backup y vamos a saber todos los parámetros que tiene un backup que se hace
por línea de comando.
La instrucción para hacer backup de sus bases de datos es May SQL Dahm.
Esta instrucción va seguida por el nombre de usuario con un parámetro que es menos u root.
El nombre de usuario root menos p.
Esto significa que le estoy indicando a la instrucción de que me va a tener que pedir por teclado en
la paz.
Guarde root para poder hacerlo, sino no va a funcionar y ustedes podrían llegar.
No es aconsejable.
Es una práctica muy insegura, pero aquí podrían escribirle la contraseña para que no me la pida por
teclado, sino que ya la tenga en la línea de ejecución.
Esto no es aconsejable, sobretodo en entornos productivos, porque cualquier persona que acceda a la
terminal en la que estamos trabajando con con la flechitas, con ir al histórico de las instrucciones
que nosotros vamos hemos ejecutado, va a poder acceder y obtener la password de root.
Y eso es una práctica terriblemente mala en cuestiones de seguridad.
Entonces, una vez que tenemos esto, podemos incorporarle un tercer parámetro, que es el host a donde
nos vamos a conectar en el caso de que ustedes.
Se conecten a la máquina local, le ponen local host o directamente no colocan este parámetro porque?
Porque ya asumen que si lo estoy corriendo y no le he indicado ningún Josh va a correr en la máquina
local.
Ahora, si ustedes tuvieran un servidor remoto que está atado a una IP o a una u RLM determinada, aquí
colocaría menos H y colocarían esa IP o esa u rl.
Muy bien, lo que vamos a ver ahora es el resto de los parámetros.
Lo único que hemos hecho aquí es permitir que el Magie se cuele Dahm se lo ghi dentro del servidor para
hacer las tareas que tiene que hacer, que es el dump.
Ahora nosotros podemos ponerle un parámetro ya los parámetros de Moisés se cuele Dan van con guión doble,
fíjense.
Y aquí podemos ponerle que por ejemplo, si nosotros colocamos Old Data Voices, lo que va a hacer es
se va a conectar a mi servidor y me va a copiar todas las bases de datos.
Va a ser un backup de todas de la base de datos curso information, esquema, maisí, kul, performance,
esquemas, aquilea, todo.
Entonces cuidado, porque si ustedes lo que tienen que hacer es hacer un dahm solamente de la variable
curso, aquí en vez de Old Data Voices tendrían que colocar data bases en plural, aunque coloque una
sola y pongo curso.
Si ustedes tuvieran que hacer un backup de curso y a su vez quieren hacer en un mismo archivo el backup
de curso y el backup de la base de datos sabila, que es la que hemos visto en el curso con el tema
de los films.
Bueno, aquí colocan Sakina una al lado de la otra sin separar por comas asignada.
Ahí tienen las dos bases de datos que vamos a copiar.
Yo aquí podría darle a Enter y el Main SQL Dam va a ser un dame, un DUP significa volcado dump en inglés
significa volcado.
Entonces esto va a ser un volcado de datos de estas bases de datos.
Si yo le doy a Enter, lo va a tirar a pantalla.
No me sirve, no me sirve que la salida de esta instrucción sea la pantalla.
Así que voy a tener que indicarle con el signo mayor, que la salida de esta instrucción la va a tener
que enviar a un archivo.
Entonces aquí puedo ponerle donde lo quiero grabar dos puntos.
Vamos a buscar la barra invertida, dos puntos y ahí quiero grabarlo con mi vaca.
Punto SQL.
Los archivos de backup tienen que terminar con la E con la extensión punto SQL.
Porque?
Porque internamente lo que va a ser Maisí CLAMP es crearme un archivo de texto con todos los insert,
los Cristabelle para crear las tablas.
Toda la información volcada en insert.
Entonces lo voy a poder editar.
Vamos a ver que el resultado cuando hagamos este dahm lo vamos a poder editar y lo vamos a poder ver
por pantalla.
Le vamos a dar enter, me va a pedir la password.
Recuerden que yo no se la indiqué en la línea de comando, voy a colocarle mi password y voy a darle
enter y eso me generó.
Si vamos a ir a mi disco que me generó un archivo llamado mi backup.
Punto es se cuele y aquí adentro si nosotros nos fijamos, vamos a ver si puedo agrandar esto.
Tenemos todos los primeros, lo que hace es borra la tabla si existe y luego la vuelve a crear.
Así hacen los dams, la borra, la crea y luego le graba toda la información.
Fíjense que en clientes yo ya tengo los insert con todos los clientes que tenía en mi base de datos
y este dump ustedes lo pueden hacer para que grabe, lo pueden colocar en un script para que diariamente
les genere un backup.
En lugar de colocarle mi vaca podríamos colocarle Vaclav con la fecha de hoy 28 de febrero del 2021.
Dios dicho sea de paso.
Hey chicos, cumplo dos años en you demí, hoy cumplo dos años en YW de mi este y la verdad que bueno
lo quise festejar creando este capitulo.
Bueno, muy bien, ya tenemos hecho un backup de dos bases de datos, pero este backup aunque ustedes
no lo crean, está incompleto.
Porque?
Porque mi SQL dump no graba, no vuelca ni los triggers ni los stor presidios.
Entonces lo que yo tengo que hacer es indicarle a mi mail SQL dump que fuerce el volcado, que incluya
en mi archivo SQL todo nuestro sector presidios y todos nuestros triggers.
Cómo se hace?
Vamos a ir nuevamente a la instrucción y aquí, después de indicarle las bases de datos o antes no hay
un orden, vamos a colocar un parámetro llamado rutinas, que eso es lo que va hacer.
Es es portarme mi mis stor procedures se llama así son rutinas almacenadas y si quiero los terriers
tengo que colocar triggers.
Esto que parecería que es una falla de en realidad el ciclo porque tengo que ir indicarlo.
En realidad lo que hace es darme una libertad muy grande porque quizás yo no yo ya los Tery vérselo
y los stor presidios los tengo creados en mi servidor de destino.
Yo no tengo que volver a crearlos y lo único que quiero es hacer un backup de los datos.
Esto ocupa el lugar, entonces, cuando yo tengo que hacer un backup por seguridad de los datos, no
me interesa grabarlos los otros objetos de la base de datos y también si yo quisiera que me grabe los
eventos se colocan doble guión events fíjense.
Me permite separar todos los objetos y si yo los puedo juntar con estos parámetros, yo podría tranquilamente
hacer un backup solo de rutina o solo de los tres diversi y demás.
Y también lo que me permite hacer esto es que yo puedo decirle que me haga un backup, pero solamente
de las estructuras.
Y eso se hace con él.
No data, con él no data.
Aquí no me pústula.
Además, y si no me equivoco, es un guión muy bien.
Esto es mucho más rápido que hacerlo por él, por el Heidy se cuele.
Y esto es lo que les va a permitir es tener un backup de cada una de las bases de datos con las que
ustedes trabajen.
Muy bien.
Ahora, cómo se hace el paso contrario?
Ustedes ya hicieron un dahm, hicieron un un volcado.
Tienen un archivo que se llama Mi vaca punto SQL.
Cómo hacen ahora para hacer un restore?
Cómo?
Cómo vuelco eso en un motor para que me crea la base de datos?
Las estructuras de las tablas.
Los triggers, los valores en cada una de las tablas.
Bueno.
Para hacerlo tienen que usar la instrucción Joaqui Se los voy a escribir para que vean como se hace.
No lo vamos a ejecutar porque me va a hacer un desastre mi motor.
Pero esto es así.
Maisí Al menos un robot menos p menos H donde lo vanna el restore ar puede ser que yo el backup lo hice
de mi localhost, pero quiero aplicarlo en un servidor remoto.
Entonces aquí no va a ser igual.
Aquí no voy a ponerlo calçots, sino que voy a poner la IP del servidor remoto.
En este caso vamos a poner localhost y vamos a decirle que una vez que se conectó y me pidió la la la
contraseña y se lo en el motor va a ser una lectura con el signo menor, con el signo menor va a ser
una lectura de un archivo que va a ser ni más ni menos que nuestro famoso mi backup punto SQL.
Esta instrucción se va a conectar a mi motor de localhost y va a ser un pastor de mi archivo, mi backup
punto SQL y se entiende esto.
Ojo con esto porque esto mata lo que tenga Arantes.
Si ustedes creen que lo que va a hacer es bueno comparar y si hay una información diferente la va a
actualizar, no?
Esto es lo que va a hacer es va a romper todo mi servidor actual y va a traer el nuevo backup y va a
poner porque recuerden que dentro del backup lo que hace es borrar la tabla directamente.
Si la tabla tenía datos, la borra, borra la tabla, la crea nuevamente y hace un insert de los datos
que fueron va capados oportunamente.
Así que cuidado con esto.
A veces cuando tengo que recuperar datos de un backup anterior, lo que se hace es se edita el archivo
a punto SQL, se le cambia el nombre de la base de datos que va a crear y directamente se va kPa como
una base de datos paralela auxiliar donde yo puedo ir, ahí si puedo hacer select de las tablas, puedo
obtener la información antiguo que yo he perdido y puedo trabajar sin ningún problema.
Bueno, esto es lo que yo quería mostrarles en este capítulo.
Cómo hago mi SQL dump?
Cómo hago un Maisí?
Culpara, importar y resto orear ese archivo que acababa de hacer un dump?
O quizás fue un archivo que hice un DAB hace un mes anterior?
Y por supuesto, cómo hacer para que me reconozca las instrucciones de mis cicle modificando las variables
de entorno de nuestro sistema operativo?
El favor que les voy a pedir es no me pregunten cómo configurar las variable entorno porque yo tengo
un Windows 8 en Windows 7 más o menos.
Está todo en el mismo lugar en mi PC propiedades o configuración e configuración avanzada y ahí van
a encontrar la misma sola pista y el mismo botón que dice variables de entorno.
Nos vemos en el próximo capítulo.