Si reinstalo mysql, ¿pierdo mis bases de datos?

14

Tengo MySQL instalado en mi localhost. ¿Qué sucede si tengo un problema con mysql y quiero volver a instalarlo? ¿Pierdo mis bases de datos existentes?

usuario3018393
fuente
¿No sería mejor explicar sus problemas con mysql? Para que las personas puedan tratar de ayudarlo a solucionarlos. Reinstalar es más una forma de Windows de resolver problemas.
rechengehirn
1
Siendo cauteloso, es una buena idea hacer una copia de seguridad de sus bases de datos primero. Puede usar mysqldump con la opción --all-bases de datos. dev.mysql.com/doc/refman/5.7/en/...
ProgRock

Respuestas:

11

No, la reinstalación mysql-serverno eliminará los archivos de la base de datos, solo eliminará los archivos del paquete mysql-server. Podrá acceder a sus archivos (base de datos) después de reinstalar el servidor.

Para purgar e instalar mysql-server:

sudo apt-get purge mysql-server
sudo apt-get install mysql-server

Si también desea eliminar la base de datos, primero debe eliminarla antes de eliminar mysql. Para eliminar la base de datos limpiamente, en el indicador de mysql, escriba:

drop database <database_name>

Encontré otra forma de eliminar los archivos de la base de datos, pero no estoy seguro de si esta es una forma limpia de eliminar la base de datos, así que tómalo con una pizca de sal:

De una pregunta sobre stackoverflow :

(La ubicación de los archivos de la base de datos) es específica de la instalación, pero si tiene / var / lib / mysql, entonces:

  • Las tablas MyISAM se almacenarán en archivos individuales en / var / lib / mysql / databasename /
  • InnoDB reside en / var / lib / mysql / ibdata (a menos que haya utilizado la configuración innodb_per_table, en cuyo caso se almacena de forma similar a las tablas MyISAM)

Por lo tanto, verifique la ubicación de sus bases de datos en estas dos ubicaciones y elimine el directorio de las bases de datos (requiere privilegios de superusuario para leer y eliminar).

Jobin
fuente
¿Cómo lo hago para eliminar mis archivos, si quisiera?
Aditya MP
3
purgeCuál es el comando correcto si no quiero perder los datos?
ahmadali shafiee
0

Esta es una vieja pregunta, pero sin embargo, aquí están mis 5 ¢:

  1. Primero haga una copia de seguridad de la base de datos, por ejemplo, usando mysqldump.
  2. Ahora hazlo sudo apt-get purge mysql-server mysql-server-5.7. Le preguntará si realmente desea eliminar los archivos de la base de datos, haga clic enYes
  3. Reinstale mysql usando sudo apt-get install mysql-server mysql-server-5.7
  4. Inicie la base de datos mysql
  5. Recree la base de datos y su usuario utilizando la mysqlutilidad de línea de comando
  6. Importe el volcado desde su copia de seguridad

Puede preguntar para qué sirve todo este procedimiento: hay casos en los que la base de datos mysql ha tenido muchas transacciones grandes y ocupa mucho espacio en el disco. Destruir y reconstruir la base de datos es una forma de reducirla nuevamente.

jk - Restablecer a Monica
fuente
en algunos casos, eliminar db no es una opción ... por lo que esta respuesta debe corregirse con ese contexto ...
Siddharth
0

Uso sudo apt-get remove mysql-server.

No use sudo apt-get purge mysql-server, lo que eliminará los archivos /var/lib/mysql.

Zahid Gill
fuente
Simplemente seleccione <No> cuando le pida que elimine todas las bases de datos MySQL.
mariozawa