对比emysql和mysql-otp之后,个人选择了mysql-otp作为mysql连接驱动,并使用raber加载mysql-otp。
1、 创建bertie文件,使用rebar创建应用:
mkdir bertie && cd bertie
rebar create-app appid=bertie
2、创建rebar配置文件:
sudo vim rebar.config
配置内容如下:
{deps, [
{mysql, ".*", {git, "https://github.com/mysql-otp/mysql-otp",
{tag, "1.5.0"}}}
]}.
3、下载配置文件中的库:
rebar get-deps
4、编译项目
rebar compile
5、移动deps文件下的mysql文件到/usr/lib/erlang/lib/目录下
linux环境下:
sudo mv deps/mysql/ /usr/lib/erlang/lib/
---
Mac os环境下:
sudo mv deps/mysql/ /usr/local/lib/erlang/lib/
6、编写连接数据库的测试程序
sudo vim src/bertie.erl
测试连接程序:
-module(bertie).
-export([run/0]).
run()->
%% Connect (ssl is optional)
io:format("..........~n"),
{ok, Pid} = mysql:start_link([{host, "localhost"}, {user, "root"},
{password, "root"}, {database, "IoT"}]),
{ok,Ins} = mysql:prepare(Pid,<<"INSERT INTO user (user_name,user_passwd) VALUES (?,?)">>),
ok = mysql:execute(Pid,Ins,[<<"admin">>,<<"admin">>]),
{ok, ColumnNames, Rows} =
mysql:query(Pid, <<"SELECT * FROM user where user_id = ?">>,[1]),
io:format("Rows: = ~n~p~n",[Rows]).
~ ~
附加:不用执行rebar compile也可以,这里目的是下载mysql驱动。