对于自制mysql安装,my.cnf在哪里?它安装了吗?
当前回答
您可以找到特定包提供my.cnf文件的位置,例如。
brew list mysql # or: mariadb
除了验证文件是否被读取,你可以运行:
sudo fs_usage | grep my.cnf
它将实时显示与该文件相关的文件系统活动。
其他回答
对于MacOS (High Sierra),已经安装了自制的MySQL。
从mysql环境中增加全局变量不成功。因此,在这种情况下,创建~/.my.cnf是最安全的选择。使用[mysqld]添加变量将包括更改(注意:如果使用[mysql]更改,更改可能不起作用)。
<~/.my.cnf> [mysqld] connect_timeout = 43200 max_allowed_packet = 2048M net_buffer_length = 512M
重新启动mysql服务器。检查变量。 y
SELECT @@max_allowed_packet; +----------------------+ | @@max_allowed_packet | . +----------------------+ | 1073741824 | +----------------------+
set中的1行(0.00秒)
添加另一个答案
公认的答案是正确的。因为我们讨论的是Homebrew安装的mysql,而不是手动安装的mysql,所以有更直接的方法来查找conf。 前一个答案可能有点过时,Homebrew在M1 Mac上存储在不同的位置
Conf
在安装过程中,my.cnf会被Homebrew复制到以下位置
/usr/local/etc/my.cnf for x86 Mac /opt/homebrew/etc/my.cnf
Homebrew选择/usr/local或/opt/ Homebrew存储包,因此默认的conf文件不存储在/etc/中,而是存储在/usr/local/etc或/opt/ Homebrew /etc中。
事实上,homebrew在从源代码编译mysql时改变了-DSYSCONFDIR=(默认的conf位置)标志。
启动服务
一个简单的回答:运行brew info mysql并查看提示。
推荐使用“brew services start mysql”,使用launchd管理服务。(launchd被认为是macOS上的systemd选项)
如果有人想手动启动,请使用mysql。没有任何选项的启动就足以启动服务。(mysql。Start是mysql提供的帮助启动服务的脚本)
有一种方法可以知道:
sudo /usr/libexec/locate.updatedb
# wait a few minutes for it to finish
locate my.cnf
您可以找到特定包提供my.cnf文件的位置,例如。
brew list mysql # or: mariadb
除了验证文件是否被读取,你可以运行:
sudo fs_usage | grep my.cnf
它将实时显示与该文件相关的文件系统活动。
由于mysql——help显示了一个文件列表,我发现将结果管道到ls来查看它们中的哪些存在是有用的:
$ mysql --help | grep /my.cnf | xargs ls
ls: /etc/my.cnf: No such file or directory
ls: /etc/mysql/my.cnf: No such file or directory
ls: ~/.my.cnf: No such file or directory
/usr/local/etc/my.cnf
对于我的(安装了Homebrew) MySQL 5.7,文件似乎在/usr/local/etc/my.cnf.
推荐文章
- 如何关闭mysql密码验证?
- MySQL区分大小写查询
- MySQL数据库表中的最大记录数
- 原则-如何打印出真正的sql,而不仅仅是准备好的语句?
- PHP/MySQL插入一行然后获取id
- 如何从命令行通过mysql运行一个查询?
- 如何从命令行在windows中找到mysql数据目录
- 如何找到MySQL的根密码
- 如何改变字符集(和排序)在整个数据库?
- mySQL:: insert到表,数据从另一个表?
- 重复键忽略?
- Homebrew:以新的formula@version格式列出可用版本
- 将表从一个数据库复制到另一个数据库的最简单方法?
- 如何通过查询在MySQL中获得数据库结构?
- MySQL删除表中的所有行,并将ID重置为零