转自:http://blog.csdn.net/flyinmind/article/details/7740540

项目中用到erlang,同时也用到mysql。惯例,google。

但是,按照网上说的做,有些出入,行不通,需要自己摸索,下面记录我摸索的东西。

1、下载erlang-mysql-driver;

下载地址:https://github.com/dizzyd/erlang-mysql-driver

2、解压到mysql目录,不罗嗦了;

3、编译

要先配置erlang路径,在/etc/profile中,将erlang的bin路径写入比如PATH=$PATH:/home/erlang/bin

否则提示rebar找不到到escript。

在源码目录,运行make,没有任何提示,所以不用这种方法,

将include下的mysql.hrl拷贝到src目录下,然后“erlc *.erl”,得到beam文件

在源码mysql目录下创建ebin目录,将这些beam文件拷贝到ebin下。

最后的目录结构式这样的

mysql

|---ebin

|---src

|---include

4、将整个mysql目录移到erlang中,假设你的erlang放在/home/erlang下

将mysql移到/home/erlang/lib/erlang/lib下,而不是直接放在/home/erlang/lib下。

可以了,打开erlang的终端测试一下

mysql:start_link(conn, "数据库IP或域名", 3306, "root", "密码", "数据库名称", undefined, utf8).
{data, Result} = mysql:fetch(conn, <<"select * from t_users">>).
Rows = mysql:get_result_rows(Result).

5、去除不必要的打印信息

增加一个log函数,只容许error级别的打印,其他的都不打了。

log(Module, Line, Level, FormatFun) ->
    case Level of
    error ->
        {Format, Arguments} = FormatFun(),
        io:format("~w:~b: "++ Format ++ "~n", [Module, Line] ++ Arguments);
    _ -> o
   end
.

mysql:start_link(conn, "数据库IP或域名", 3306, "root", "密码", "数据库名称", fun log/4, utf8).

希望上面的内容对你有用,减少不必要的时间浪费:)

转载: erlang连接mysql的更多相关文章

  1. erlang连接mysql [转]

    转自: http://blog.csdn.net/flyinmind/article/details/7740540 项目中用到erlang,同时也用到mysql.惯例,google. 但是,按照网上 ...

  2. erlang连接mysql

    http://blog.csdn.net/flyinmind/article/details/7740540 项目中用到erlang,同时也用到mysql.惯例,google. 但是,按照网上说的做, ...

  3. Java连接MySQL中文乱码处理【转载】

    本文转载地址:http://developer.51cto.com/art/200906/130425.htm 感谢相关作者! MySQL默认编码是latin1 mysql> show vari ...

  4. 转载:Java连接MySQL 数据库的正确操作流程

    转载网址:http://www.bitscn.com/pdb/mysql/201005/186551.html       以下的文章主要介绍的是Java连接MySQL 数据库(以MySQL数据库为例 ...

  5. 转载:EntityFramework 6.0< Code First > 连接 Mysql数据库

    转载自:http://blog.csdn.net/kmguo/article/details/19650299 网上有很多关于用EntityFrame来连接Mysql数据库的教程,可是很多并不靠谱,转 ...

  6. 【转载】在使用JDBC连接MySql时报错:You must configure either the server or JDBC driver (via the serverTimezone configuration property) to use a more specifc time zone value if you want to utilize time zone support

    在使用JDBC连接MySql时报错:You must configure either the server or JDBC driver (via the serverTimezone config ...

  7. cmd连接mysql的方法详解(转载)

    连接:mysql -h主机地址 -u用户名 -p用户密码 (注:u与root可以不用加空格,其它也一样)断开:exit (回车) 创建授权:grant select on 数据库.* to 用户名@登 ...

  8. php 连接mysql数据库并显示数据 实例 转载

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/ ...

  9. Jmeter连接MySQL和SQL Server配置(转载)

    在使用jmeter做性能或自动化测试的时候,往往需要直接对数据库施加压力,或者某些参数只能从数据库获取,这时候就必须使用jmeter连接数据库. 2 下载对应的驱动包 mysql驱动: (mysql- ...

随机推荐

  1. nginx配置文件中location说明

    1 nginx配置文件 文件结构 ... #全局块 events { #events块 ...} http #http块 { ... #http全局块 server #server块 { ... #s ...

  2. django的hello world 项目

    一.新建一个django项目bester: django-admin startproject bester 二.在bester项目中建一个叫polls的应用程序: cd bester/ python ...

  3. MySQL变量的定义与赋值

    MySQL存储过程中,定义变量有两种方式:1.使用set或select直接赋值,变量名以 @ 开头.例如:set @var=1;可以在一个会话的任何地方声明,作用域是整个会话,称为会话变量. 2.以 ...

  4. angular.js 中同步视图和模型数据双向绑定,$watch $digest $apply 机制

    Angular.js 中的特性,双向绑定. 让视图的改变直接反应到数据中,数据的改变又实时的通知到视图,如何做到的? 这要归功于 scope 下面3个重要的方法: $watch $digest $ap ...

  5. java.lang.IllegalStateException: The specified child already has a parent. You must call removeView

     java.lang.IllegalStateException: The specified child already has a parent. You must call removeVi ...

  6. [hihoCoder] 骨牌覆盖问题·一

    时间限制:10000ms 单点时限:1000ms 内存限制:256MB 描述 骨牌,一种古老的玩具.今天我们要研究的是骨牌的覆盖问题:我们有一个2xN的长条形棋盘,然后用1x2的骨牌去覆盖整个棋盘.对 ...

  7. Racket 版本的 24 点实现

    Racket 版本的 24 点实现 #lang racket ; Author: woodfox ; Date: Oct 11, 2014 ; ==================== 1. Non- ...

  8. asp.net web网站权限系统的简单设计

    权限设计总结一句话就是:拥有权限的主体来管控系统的各种资源资源,及在资源上体现的各种操作. 概括来说就是,权限离不开三要素: 1:权限的主体 2:管控的资源 3:各种操作 现对三要素分别做简单的阐述 ...

  9. python __slots__使用详解

    1.动态添加属性 class Lang(object): def __init__(self,name,score): self.name=name self.score=score def lang ...

  10. git hook部署代码

    git 提供了钩子功能,当某个操作发生时,可以执行某个动作. ftp上传时没有文件比较,虽然可以winscp提供了同步功能但是不够强大,而且文件多了,会花费比较长的时间. 1.先在主机上搭建一个git ...