参考了一些博客,但已然没有记录了,感谢、致歉!
windows下:
安装mysql:
到mysql官网下载最新版mysql,进行默认安装,
如果在“starting server”处出错,弹框,勿关闭,点确定重试,并进行下面两步操作:
1、查找安装目录下的my.ini, 在最后添加一行:tmpdir="C:/MysqlTemp";
2、控制面板 -> 管理工具 -> 服务 -> MYSQL56,手动启动它;
对上面的弹框,继续点确定,重试,即可成功完成安装
安装MYSQL-ODBC:
到官网下载mysql-odbc,分32bits和64bits的版本,这个要考虑安装机器和进行数据库操作的程序是32bits还是64bits的,机器和程序都要考虑,
只安装其中一个,可能会无法连接数据库,懒一点的方法是,都安装!(安装顺序,未验证是否有影响)
如果odbc安装失败,报错 error 1918,则需要安装windows的动态库:(两个文件都很小)
64-bit version,vcredist_x64.exe: http://www.microsoft.com/en-us/download/confirmation.aspx?id=14632
32-bit version,vcredist_x86.exe: http://www.microsoft.com/en-gb/download/details.aspx?id=5555
下载两个版本的vcredist,都安装,然后就能完成两个版本的mysql-odbc的安装。
Linux下:
ubuntu下安装mysql和mysql-odbc已经编译程序可能需要使用到的命令:(ubuntu下未成完成myodbc的安装,此处只是做下尝试记录)
# install unixodbc
udo apt-get install unixodbc
# install unixodbc-dev
udo apt-get install unixodbc-dev
# download .deb from mysql-website (apt/yum), this step maybe can be ignore
download mysql-apt-config_0.3.5-1ubuntu14.04_all.deb from mysql.com
# run .deb, this step maybe can be ignore
sudo dpkg -i /home/ryan/Downloads/mysql-apt-config_0.3.5-1ubuntu14.04_all.deb
# update
sudo apt-get update
# install mysql-server
sudo apt-get install mysql-server
# install mysql-client
sudo apt-get install mysql-client
vim /etc/odbc.ini
vim /etc/odbcinst.ini
centos下安装mysql-odbc-connector,编译otlv4.h相关程序,访问远程数据库,可能需要使用到的命令:
# install unixodbc, unixODBC-develyum install unixODBC unixODBC-devel libtool-ltdl libtool-ltdl-devel
# install mysql-connector
yum install mysql-connector-odbc
# vim odbcinst.ini, make sure has [MySQL]
vim /etc/odbcinst.ini
[MySQL]
Description = ODBC for MySQL
Driver = /usr/lib/libmyodbc5w.so
Setup = /usr/lib/libodbcmy5w.so
FileUsage = 1
# vim odbc.ini, create database connector information
vim /etc/odbc.ini
[mydb]
Description = MySQL connection to 'mydb' database
Driver = MySQL
Database = mydb
Server = localhost ; domain or ip
UserName = user_name
Password = password123
Port = 3306
Socket = /var/lib/mysql/mysql.sock
# /var/lib/mysql/mysql.sock should be found in /etc/my.cnf
配置数据库远程连接的权限:
mysql,默认情况是禁止远程来连接本地数据库的,
windows下打开"MySQL 5.6 Command Line Client",使用密码登陆;linux下通过Terminal输入:mysql -u root -p,输入密码即可登陆,
(假设我们需要让所有机器都可以通过tester(用户名)、test123(密码)来操作数据库mydb的所有表)
grant select,update,insert,delete on mydb.* to 'tester'@'%' identified by 'test123';
flush privileges;
其中:
mydb.*,代表mydb下的所有表;
'%',代表任意地址;你也可以改成一个指定的ip,如'192.168.0.123',此时,只有192.168.0.123才可以通过tester+test123来访问mydb
编译otlv4.h可能使用到的一些宏:
#define OTL_ODBC_UNIX
#define OTL_ODBC_MYSQL
#if defined(__WIN64__) || defined(__MINGW64__) || defined(__x86_64__) || defined(__amd64__)
#define OTL_STREAM_NO_PRIVATE_UNSIGNED_LONG_OPERATORS
#endif // defined(__WIN64__) || defined(__MINGW64__) || defined(__x86_64__) || defined(__amd64__)
#define OTL_UBIGINT uint64_t
#include "otlv4.h"