我试图在我的机器上重新安装 mysql,但它一直失败。每次失败时,它都会执行此锁定,并且锁定和未来的努力将再次失败。
最后我决定做真正的干净安装
- 删除所有内容
- 重新安装
该过程在此处列出:http: //stuffthatspins.com/2011/01/08/ubuntu-10-x-completely-remove-and-clean-mysql-installation/
我不想丢失已经存在的数据。是的,它已备份,但我有点喜欢那里。
那么,我可以只 mv /etc/mysql 的内容,然后在重新安装所有内容后将其复制回来吗?
我的程序员说它不起作用
如果不是,我还应该知道什么?
我有点忘记mysql在哪里存储数据。我猜这是 ubuntu 的默认设置。
更新:我在使用可用计算机的一些本地数据库上进行了尝试。Myisam 表被转移。但是 innodb 表没有。
此外, http://www.chriscalender.com/? tag=innodb-error-tablespace-id -in-file 表明仅通过复制文件不会轻易转移 innodb。我错过了什么吗?
另一个更新:答案是肯定的,我们可以。我们做到了:D
更新伙计们。
简短的回答是肯定的,我们可以。我的程序员刚刚做到了。关键是复制整个文件并实现innodb将数据库存储在一个大文件中。不知道为什么。
另一个答案更好,所以我选择那个(我认为选择我自己的答案不是客观的)。我只是想分享它的工作原理。
如果您能够关闭您的数据库服务器(我的理解是您确实能够) - 从而禁用您的应用程序 - 那么这确实是最简单的。
您可以在关机后复制+粘贴您的数据目录。首先,您的数据在哪里?只需发出:
从您的 MySQL 服务器中。
顺便说一句,虽然您必须将数据备份到安全的地方,但我不希望任何
apt-get
oraptitude
命令实际接触您的数据。请注意,您链接到的页面有一些非常疯狂的想法,例如:
鉴于上述查询,我鼓励您去其他地方寻找。它将从您的根文件系统中删除所有 mysql* 文件。包括您自己的应用程序的
mysql-config.ini
文件(当然,如果有的话),包括libdbd-perl-mysql
- 没有完全卸载......我的意思是,这真的是一个糟糕的建议。备份
my.cnf
文件没有意义,删除文件然后再放回去。你的datadir
.只需卸载 MySQL 并重新安装就足够了 - 但这也有点有趣,因为两者都是通过
apt-get
- 所以你基本上重新安装相同的版本......至少让自己获得更新版本的 MySQL。