如何让 emacs sql-mode 使用 mysql 配置文件 (.my.cnf)?
·
问题:如何让 emacs sql-mode 使用 mysql 配置文件 (.my.cnf)?
当我在 bash 提示符下键入mysql dbname时,我会使用我的.my.cnf文件中包含的username、password和host信息自动连接到数据库dbname。
当我在 emacs 中使用M-x sql-mysql时,我再次被要求提供所有这些信息。
有没有办法让emacs sql模式使用我的.my.cnf文件中的信息?
解答
我认为这是不可能的,但您可以在模式配置本身中设置这些内容:
(setq sql-connection-alist
'((pool-a
(sql-product 'mysql)
(sql-server "1.2.3.4")
(sql-user "me")
(sql-password "mypassword")
(sql-database "thedb")
(sql-port 3306))
(pool-b
(sql-product 'mysql)
(sql-server "1.2.3.4")
(sql-user "me")
(sql-password "mypassword")
(sql-database "thedb")
(sql-port 3307))))
(defun sql-connect-preset (name)
"Connect to a predefined SQL connection listed in `sql-connection-alist'"
(eval `(let ,(cdr (assoc name sql-connection-alist))
(flet ((sql-get-login (&rest what)))
(sql-product-interactive sql-product)))))
(defun sql-pool-a ()
(interactive)
(sql-connect-preset 'pool-a))
查看这篇文章了解更多信息。
更多推荐



所有评论(0)