Emacs 访问 MySQL


用Emacs访问MySQL好久了,最近因为换了单位,重新配置环境的时候居然花了一个多小时,特此记录。

1.Ubuntu下用sudo apt-get install 安装

libmysqlclient-dev 和 mysql-client-core-5.5

2.下载sql.el和mysql.el,并在~/.emacs文件中加载

http://www.emacswiki.org/emacs/sql.el

http://www.emacswiki.org/emacs/mysql.el

  1. (load-file (expand-file-name "/opt/emacs_plugins/sql.el"))  
  2. (load-file (expand-file-name "/opt/emacs_plugins/mysql.el"))  
3.如果你的mysql端口不是标准端口的话,需要用下面的命令在.emacs文件中设置
  1. (setq sql-mysql-options (list "-P 6871"))  
4.通过下面的命令设置两个连接mysql的常用帐号:
  1. (setq sql-connection-alist  
  2.       '((pool-a  
  3.          (sql-product 'mysql)  
  4.          (sql-server "ip1")  
  5.          (sql-user "user1")  
  6.          (sql-password "pwd1")  
  7.          (sql-database "db1")  
  8.          (sql-port 6871))  
  9.         (pool-b  
  10.          (sql-product 'mysql)  
  11.          (sql-server "ip2")  
  12.          (sql-user "user2")  
  13.          (sql-password "pwd2")  
  14.          (sql-database "db2")  
  15.          (sql-port 3306))))  
  16.   
  17. (defun sql-connect-preset (name)  
  18.   "Connect to a predefined SQL connection listed in `sql-connection-alist'"  
  19.   (eval `(let ,(cdr (assoc name sql-connection-alist))  
  20.     (flet ((sql-get-login (&rest what)))  
  21.       (sql-product-interactive sql-product)))))  
  22.   
  23. (defun mysql-a ()  
  24.   (interactive)  
  25.   (sql-connect-preset 'pool-a))  
  26.   
  27. (defun mysql-b ()  
  28.   (interactive)  
  29.   (sql-connect-preset 'pool-b))  

相关内容