我一直在使用 Emacs 的 sql 交互模式与 MySQL db 服务器对话并开始享受它。开发人员在新的非默认端口号上设置了另一个数据库,但我不知道如何使用 sql-mysql 访问它。
尝试连接数据库时如何指定端口号?
如果 Emacs 可以提示我输入端口号,如果我不指定就使用默认值,那就更好了。有这样的机会吗?
在挖掘了 sql.el 文件后,我发现了一个变量,它允许我在尝试创建连接时指定一个端口。
GNU Emacs 24.1 添加了这个选项。
sql-mysql-登录参数
连接到 MySQL 所需的登录参数列表。
我将此添加到我的 Emacs 初始化文件中:
(setq sql-mysql-login-params (append sql-mysql-login-params '(port)))
默认端口为 0。如果您想将其设置为默认 MySQL 端口,您可以自定义sql-port
(setq sql-port 3306) ;; default MySQL port
GNU Emacs 24.1 中所有流行的 RDMS 系统都有一个sql-*-login-params
变量。sql-port
用于 MySQL 和 PostreSQL
(setq sql-mysql-options (list "-P <port number>"))
我找到了使用的选项:
M-x customize-group
SQL
这包括一个标记为:
Mysql Options:
如果您设置选项并保存它,将在您的 .emacs 中添加一个新行:
(custom-set-variables
'(sql-mysql-options (quote ("-P ???"))))
(显然,您应该使用实际的端口号。)
我使用 XEmacs,所以你的里程可能会有所不同。