mysql 服务总是崩溃

mysql 服务总是崩溃

我是这方面的新手,如果这个问题很愚蠢,我很抱歉,但 Mysql 服务一直崩溃。我在互联网上发现我应该编辑 my.cnf 文件并添加innodb_buffer_pool_size=64M,但当我尝试时sudoedit /etc/mysql/my.cnf,我得到的是sudoedit: /etc/mysql/my.cnf: editing symbolic links is not permitted

有人能帮我吗?我有 Ubuntu 18.04。我应该把那个 innodb 缓冲区放在哪里,那个大小可以吗?我找不到任何清楚且有帮助的东西。我还应该做什么来解决这个问题?:(

答案1

我知道这个帖子很旧了,但今天我也不得不编辑该文件。错误消息已经说明了发生了什么。如果您尝试编辑您在另一篇文章中看到的文件,则该文件实际上并不存在。如果列出该文件夹,您将看到它实际上是一个符号链接。就我而言:

my.cnf -> /etc/alternatives/my.cnf

因此,sudoedit /etc/mysql/my.cnf您不应该编辑真正指出的文件sudoedit /etc/alternatives/my.cnf

答案2

尝试一下sudo nano /etc/mysql/my.cnf。您遇到错误editing symbolic links is not permitted只是因为/etc/mysql/my.cnf只是指向文件的符号链接/etc/alternatives/my.cnf。不要使用sudoedit、编辑mysql.cnfnano能够vim跟踪符号链接的文本编辑器。

我的建议是,如果您的 RAM 小于 8 GB,则选择innodb_buffer_pool_size大约 80% 的可用安装 RAM,如果您的 RAM 超过 8 GB,则选择 90%。一切都取决于您在特定情况下的具体情况。规则:越大,innodb_buffer_pool_sizeMySQL 越快 - 是正确的。

因此,假设您有 8GB RAM,那么 50% 的 RAM 或 4GB 是开始的正确选择。如果此配置运行良好,请逐步将此值增加 10%,直至 RAM 的 80%。如果您发现您的交换空间已被充分使用,请停止增加此值并将其减少合理的数字。

最后,用 nano 文本编辑器打开 my.cnf 文件:

sudo nano /etc/mysql/my.cnf

并在文件末尾添加新行:

innodb_buffer_pool_size = 4G

按 nano CTRL+O-> y->Enter并退出 -保存更改CTRL+X。重新启动 mysql 服务以应用新的 mysql 配置:

sudo systemctl restart mysql.service

就这样。

相关内容