Mac+MySQL+Xcode数据库配置
来源:互联网 发布:java测试工程师简历 编辑:程序博客网 时间:2024/05/22 12:35
【转】自:http://blog.csdn.net/abcjennifer/article/details/16983929
Mac下的数据库配置讲解很少,本文列出了我配置过程中的大多数可能错误和注意事项。
--------------------------------------------------------
一、 Mac上配置MySQL Connector/C++
1. 打开mysql-5.6.14-osx10.7-x86_64.dmg(http://dev.mysql.com/downloads/mysql/)
1.1. 安装mysql
1.2. 安装MySQLStartupItem.pkg
1.3. 打开MySQL.prePane系统设置
2. 设置用户名密码in terminal
- alias mysql=/usr/local/mysql/bin/mysql
- alias mysqladmin=/usr/local/mysql/bin/mysqladmin
- mysqladmin -u root password 123456(root和123456可以自己改)
3. 安装MySQL数据库管理软件sequel-pro-1.0.2.dmg(http://www.sequelpro.com/download)
输入用户名root密码123456(同上命令行就好),host: 127.0.0.1
4. Build mysql connector/c++ from source on Mac
官方参考:http://dev.mysql.com/doc/refman/5.6/en/connector-cpp-installation-source-unix.html
4.1 下载MySQL Connectors(http://dev.mysql.com/downloads/connector/),这里我用C++,就Connector/C++好啦。但是注意!这里MySQL有个非常非常不人性化的设计,在下载版本的时候(http://dev.mysql.com/downloads/connector/cpp/),它会给你检测出系统(Platform), 但是我们是需要编译的,所以要在Platform选择SourceCode再下载,不然在4.3步会出现The source directory "***/mysql-connector-c++***/include" does not appear to contain CMakeLists.txt.
4.2 安装cmake(http://www.cmake.org/cmake/resources/software.html)
4.3 安装boost库(http://www.boost.org/)
不需要用macports去下boost,直接到boost官网上下好,比如我下的boost_1_55_0, 到目录下运行sh bootstrap.sh安装boost
4.3 编译MySQL Connector
4.3.1 cd到4.1的mysql-connector-c++/下,执行
- cmake . -DBOOST_ROOT:STRING=/Users/mba/Downloads/boost_1_55_0/
其中 /Users/mba/Downloads/boost_1_55_0/ 这块是你下载后解压文件夹所在位置。执行后现在成功了,末尾显示
-- Generating done
-- Build files have been written to: /Users/mba/Downloads/mysql-connector-c++-1.1.3
4.3.1 然后就和官网上(http://dev.mysql.com/doc/refman/5.6/en/connector-cpp-installation-source-unix.html)写的一样了, 依次执行:
shell> make clean
shell> make
第三步 官网的 shell> make install又来了问题:
在[100%]之后是如下错误:
- -- Install configuration: ""
- -- Installing: /usr/local/./README
- CMake Error at cmake_install.cmake:31 (FILE):
- file INSTALL cannot copy file
- "/Users/mba/Downloads/mysql-connector-c++-1.1.3/README" to
- "/usr/local/./README".
这里注意要加superuser权限:
shell> sudo make install
执行成功后,头文件mysql_connection.h和mysql_driver.h就会给拷贝到目录/usr/local/include下; dynamic library libmysqlcppconn.so, 和 static library libmysqlcppconn-static.a.拷贝到了/usr/local/lib下,此外还有两个扩展动态库可以自行检查。
-----------------------------------------------------------
二、测试MySQL Connector/C++
1. 官方测试1(命令行版)
运行example, 如examples/standalone_example.cpp
按照官网的测试,编译下面这句
- g++ -o test_install -I/usr/local/include -I/usr/local/include/cppconn -Wl,-Bdynamic -lmysqlcppconn standalone_example.cpp
但是这句在mac上会有问题,要《一增二减》
因为就像上面我指定了Boost文件夹地址一样,如果不将Boost文件夹include进来就找不到boost相关头文件。所以include加上boost目录。再有,上面这句话是linux下的,而windows和max进行动态链接都不需要-Wl, -Bdynamic,加上会识别不出来,所以把这两个删掉,最后应该用这句:(其中boost目录自己改)
- g++ -o test_install -I/usr/local/include -I/usr/local/include/cppconn -I/Users/mba/Documents/Download_dmgs/boost_1_55_0 -lmysqlcppconn standalone_example.cpp
但是运行了后面两句之后发现还有问题,找不到动态链接库:
dyld: Library not loaded: libmysqlclient.18.dylib
查了发现需要加个软链接给lib:
加下面这句:
- sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib
再run下面两句分别输出动态链接库路径和执行
- export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
- ./test_install localhost root password database (遵照本机上的修改)
结果正确为:
- Connector/C++ standalone program example...
- ... running 'SELECT 'Welcome to Connector/C++' AS _message'
- ... MySQL replies: Welcome to Connector/C++
- ... say it again, MySQL
- ....MySQL replies: Welcome to Connector/C++
- ... find more at http://www.mysql.com
2. 我的测试2(XCode+Mac+MySQL版)
1. 新建Command Line Tool工程mysqlTest
2. 给出测试代码in main.cpp:
- #include <stdio.h>
- #include <mysql.h>
- int main (int argc, const char * argv[])
- {
- MYSQL *connection, mysql;
- mysql_init(&mysql);
- connection = mysql_real_connect(&mysql,"127.0.0.1","root","psw","database",0,0,0);
- if (connection == NULL)
- {
- //unable to connect
- printf("Oh Noes!\n");
- }
- else
- {
- printf("Connected.\n");
- }
- return 0;
- }
3.项目配置
3.1 Header Search Paths加
/usr/local/include
/usr/local/mysql/include
3.2 Library Search Paths加
/usr/local/lib
/usr/local/mysql/lib
3.1 Other Linker Flags加
-lmysqlcppconn -lm -lmysqlclient -lz
4. Build Phases加入lib(在我的电脑本上,添加libmysqlclient.18.dylib的过程中因为Library是隐藏的,所以添加不了。解决方法是在终端运行上面的命令sudo ln -s /usr/local/mysql/lib/libmysqlclient.18.dylib /usr/lib/libmysqlclient.18.dylib ,即添加软连接。然后就好使了)
5. 运行
好了,至此,本文大概列举了我在mac上配置mysql的全过程及错误。希望对大家有所帮助。
- Mac+MySQL+Xcode数据库配置
- Mac+MySQL+Xcode数据库配置
- Mac+MySQL+Xcode数据库配置
- [mac]xcode配置说明--gtest&mysql
- Xcode - Mac+Xcode+OpenCV 配置
- XCode+Mac+MySQL版
- mac opencv3 xcode配置
- MAC 下 安装配置 MySQL数据库
- Mac 下workbench mysql 数据库 配置
- 数据库之Mac下配置MySQL
- Mac安装、配置并使用MySQL数据库
- 【MySQL数据库开发之一】Mac下配置安装数据库-MySQL
- 【MySQL数据库开发之一】Mac下配置安装数据库-MySQL
- 【MySQL数据库开发之一】Mac下配置安装数据库-MySQL
- MySQL Connector/C++ Mac Xcode
- 1-Opencv Mac+Xcode配置
- Mac装OpenCV+Python配置+Xcode配置
- 在MAC下配置mysql数据库的编码问题
- php抓取网页匹配内容模板
- 文章标题
- 不好的电源会影响USB转TTL串口,导致字符乱码
- Oracle NULL 和 NOT IN
- 歌手翟彦克的女朋友是谁 被爆奉子成婚 引起争论
- Mac+MySQL+Xcode数据库配置
- hdu 3966 树链剖分
- java实现插入排序
- 借助LVS+Keepalived实现负载均衡
- 【计算几何】【求凸包】【POJ 1113】wall
- 将数据按照奇偶排序
- Qt 3D的研究(一)
- GIMMS NDVI3g原始产品转Geottif的Matlab代码
- 分支-09. 分段计算居民水费(10)