如果我重新安装mysql,是否会丢失数据库?


14

我在本地主机上安装了MySQL。如果我在使用mysql时遇到问题,想要再次重新安装,该怎么办?我是否会丢失现有数据库?


用mysql解释您的问题会更好。因此人们可以尝试帮助您解决这些问题。重新安装更多是解决问题的窗口。
rechengehirn

1
谨慎起见,最好先备份数据库。您可以将mysqldump与--all-databases选项一起使用。 dev.mysql.com/doc/refman/5.7/en/...
Progrock

Answers:


11

不会,重新安装mysql-server不会删除您的数据库文件,只会删除的软件包文件mysql-server。重新安装服务器后,您将可以访问文件(数据库)。

清除并安装mysql-server:

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

如果也要删除数据库,则必须先删除它,然后再删除mysql。要干净地删除数据库,请在mysql提示符下键入:

drop database <database_name>

我找到了另一种删除数据库文件的方法,但是我不确定这是否是删除数据库的干净方法,因此请稍作补充:

来自关于stackoverflow的问题

它(数据库文件的位置)是特定于安装的,但是如果您具有/ var / lib / mysql,则:

  • MyISAM表将存储在/ var / lib / mysql / databasename /中的单个文件中
  • InnoDB驻留在/ var / lib / mysql / ibdata中(除非您使用过innodb_per_table设置,在这种情况下,它的存储方式与MyISAM表类似)

因此,请在这两个位置检查数据库的位置,然后删除数据库的目录(需要超级用户特权才能读取和删除)。


如果需要,如何删除文件?
Aditya MP

3
purge正确的命令,如果我不希望丢失数据?
ahmadali shafiee

0

这是一个老问题,不过,这是我的5美分:

  1. 做一个备份数据库的第一,例如使用mysqldump
  2. 现在,做sudo apt-get purge mysql-server mysql-server-5.7。它将询问您是否真的要删除数据库文件,单击Yes
  3. 使用重新安装mysql sudo apt-get install mysql-server mysql-server-5.7
  4. 启动mysql数据库
  5. 使用mysql命令行实用工具重新创建数据库及其用户
  6. 从备份导入转储

您可能会问这整个过程有什么用处:在某些情况下,mysql数据库具有许多大事务,并占用磁盘上的大量空间。销毁和重建数据库是再次缩小数据库的一种方法。


在某些情况下,删除db是不可行的..因此,需要根据具体情况来更正此答案
。– Siddharth

0

使用sudo apt-get remove mysql-server

请勿使用sudo apt-get purge mysql-server,这会删除中的文件/var/lib/mysql


当它要求您删除所有MySQL数据库时,只需选择<否>。
mariozawa
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.