ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Beekeeper Studio 配置文件路径全指南:别再找错目录了

Beekeeper Studio 配置文件路径全指南:别再找错目录了 Beekeeper Studio 配置文件路径全指南别再找错目录了【免费下载链接】beekeeper-studioModern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more. Linux, MacOS, and Windows.项目地址: https://gitcode.com/GitHub_Trending/be/beekeeper-studioBeekeeper Studio 的配置文件放在每个平台的固定位置默认值打底、用户级管个人、机器级管强制。所有查找路径都是硬编码的你找不到任何可以改去哪找的配置项。平台用户级路径管理员级路径开发模式路径MacOS~/Library/Application Support/beekeeper-studio/user.config.ini/Library/Application Support/beekeeper-studio/system.config.iniapps/studio/local.config.ini同时取代前两项Linux~/.config/beekeeper-studio/user.config.ini/etc/beekeeper-studio/system.config.iniapps/studio/local.config.ini同时取代前两项Windows%APPDATA%\beekeeper-studio\user.config.iniC:\ProgramData\beekeeper-studio\system.config.iniapps/studio/local.config.ini同时取代前两项配置体系为什么是这样设计的 ⚡想象你的公司给每台电脑预装了这个 SQL 客户端。IT 部门希望所有机器统一走代理、统一禁用某个危险功能而你自己只是想把结果页每页显示多一点行。这两个诉求不可能写在同一个文件里于是配置被拆成三层默认基线随安装包分发default.config.ini出厂值用户层是你个人的覆盖user.config.ini管理员层是机器级强制策略system.config.ini。同名的键谁排在后面谁说了算。查找位置不可配置这条约束听起来不近人情但它换来了确定性应用启动时永远知道去哪读配置IT 管理员可以精确地把策略文件放进系统目录也排除了我把配置目录指到了别处然后怪应用不生效这类排查噩梦。官方文档原话是Beekeeper Studio looks for specific files in specific locations. This is not configurable。还有一点值得注意文件名是刻意错开的。用户文件叫user.config.ini管理员文件叫system.config.ini不是同一个文件放两个目录。你把名字搞混管理员策略就永远不生效。怎么改把每页行数从 100 改成 200 ⚙️以最常见的诉求为例表格视图默认每页显示 100 行[ui.tableTable]节的pageSize键你想改成 200。找到文件打开速查表里你平台的用户级路径所在目录。文件不存在就新建一个其实生产版应用首次启动时会把打包的默认配置复制一份到你目录里供参考所以大概率已经躺着了。如果文件已有内容别整个覆盖只追加或修改你要的键。写入内容INI 格式[方括号]是节标题两侧留空格;开头是注释。在文件里写; 表格视图每页显示的行数 [ui.tableTable] pageSize 200改快捷键同理比如把主查询快捷键单独绑到ctrlOrCmdenter就写在[keybindings.queryEditor]节下。让改动生效完全退出应用再重新打开。配置只在启动时加载一次热重载是不存在的。各平台差异点哪些地方容易踩坑MacOS~/Library在 Finder 里默认隐藏别翻半天。按Cmd Shift G调出前往文件夹直接粘贴~/Library/Application Support/beekeeper-studio回车即可。注意用户目录和管理员目录一个在~你的用户主目录下一个在根/Library下后者需要管理员权限写。Linux用户目录遵循 XDG 规范——Linux 上每个程序的用户配置的官方约定就是~/.config/程序名Beekeeper Studio 没有走样。降级行为很温和system.config.ini不存在时加载函数只记一条警告日志并返回空对象应用照常启动见 mainBksConfig.ts。它说明管理员配置是有就用、没有不报错的。Windows%APPDATA%即C:\Users\用户名\AppData\Roaming是按用户隔离的而C:\ProgramData是全机器共享的——这个区别正好对应用户层和机器层的语义。代码里管理员路径取自环境变量ProgramData取不到才回退到C:\ProgramDatamainBksConfig.ts。另有速查表外的特例便携版设置了PORTABLE_EXECUTABLE_DIR环境变量会把用户数据整个搬到可执行文件旁边的beekeeper_studio_data目录见 mainPlatformInfo.ts。开发模式local.config.ini放在项目apps/studio/根目录下只在开发态生效且一个文件同时顶替用户文件和管理员文件。判断依据是platformInfo.isDevelopment即 Electron 的app.isPackaged falsemainPlatformInfo.ts。选文件的分支就一行开发读local.config.ini生产读user.config.inimainBksConfig.ts。仓库里已有一个只有注释;override default config here的示例照它填即可。合并优先级与源码锚点 覆盖关系一行公式说清system.config.ini user.config.ini default.config.ini实际合并就一句伪代码BksConfigProvider构造函数BksConfigProvider.tsmerged merge({}, defaultConfig, userConfig, systemConfig)关键函数锚点都在主进程一侧loadConfig()mainBksConfig.ts#L173-L228按平台 switch 出管理员固定目录文件缺失时复制或降级并解释默认配置只从打包版本读取、用户改不了但能抄。resolveConfigDir()mainBksConfig.ts#L230-L250生产返回 Electron 的userData目录userData就是 Electron 为每个应用分配的数据主目录开发返回项目根目录——这是速查表前两列和开发模式列的代码出处。mainBksConfig()mainBksConfig.ts#L283-L319按 default → system → user 的顺序把三个文件读齐交给 provider 合并。文档和代码是否一致一致。configuration.md 描述的三层优先级与_.merge的参数顺序逐字对应管理员路径的三平台取值也和 config_file_directories.md 的表格逐项对得上。改了没生效按顺序排查 文件放对地方了吗对照开头速查表目录和文件名一个字符都不能差。INI 语法对吗节标题必须[方括号]包裹两侧留空格注释用;开头。键名拼对了吗拿不准就查 default.config.ini 里有没有这个节和键拼错的键会以unrecognized-key警告形式出现在日志里。重启了吗必须是完全退出后重新打开不是关窗口再开。是不是被更高优先级盖掉了你改的是用户文件但管理员文件里写了同名键那就以管理员为准。看调试日志日志 scope 名是BksConfigmainBksConfig.ts#L22每个文件读成功、读失败、有几条警告都会逐条打出来。延伸 速查全量配置项清单最权威的速查表apps/studio/default.config.ini已废弃键对照apps/studio/deprecated.config.ini解析与合并核心源码apps/studio/src/common/bksConfig/mainBksConfig.ts、apps/studio/src/common/bksConfig/BksConfigProvider.ts记住一句话就够了三个文件名、三套目录、管理员最后盖章改动全靠重启生效。【免费下载链接】beekeeper-studioModern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more. Linux, MacOS, and Windows.项目地址: https://gitcode.com/GitHub_Trending/be/beekeeper-studio创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表