我正在运行带有 IIS、PHP 和 MySQL 的 Windows 2008 Server。 MySQL 作为服务安装。服务器上的软件使用我需要良好备份的数据库,包括事务日志记录。我通过在 my.ini 文件中设置 log-bin= 和 expire_logs_days= 打开了二进制日志记录。这会将这些日志保存在该驱动器上的 MySQL 数据文件夹中。如果我丢失了驱动器,我就会丢失我的日志,而它们作为备份对我没有任何好处。
我找到了关于在 Linux 机器上重新定位这些日志的各种建议,但是尝试使用在 log-bin 语句中包含路径的相同想法是行不通的。在将 Linux“翻译”到 Windows 时,我尝试过“翻转”斜杠、添加引号和其他常见尝试。
我创建了一个到外部位置的映射驱动器以简化此操作,并且我尝试使用\server\folder 路径语句以及 z:\路径语句。
如有任何帮助,我们将不胜感激。
最佳答案
如果您在 my.ini 文件的 [mysqld] 部分进行了更改,那么您应该没问题。正确的路径命名约定应该类似于这样的 log-bin="C:/yourfilepathname/logs"
。由于您仍然遇到问题,请检查以确保 mysql 有权写入您指定要写入的日志文件的目录。
另一种方法可以检查这是否是问题所在,当您尝试停止和启动 mysql 服务器时转到您的 .err 日志文件,它会告诉您一些类似没有权限写入该目录的信息。
另外,我要注意其中的 log bin 文件本身并不是备份。您需要从您的服务器获取整个目录的 mysqldumps 或快照,最好是从您的主生产服务器的从属服务器。
关于MySQL 二进制日志位置 Windows 2008 Server,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28771648/