xcode mysql库_Mac+MySQL+Xcode数据库配置
[一、开发环境Mac OS X 10.9.2 64位、Xcode5.1、MySQL5.5.37 64位MySQL安装目录为:/usr/local/mysql二、配置xcode连接mysql的编译选项1> 将mysql头文件目录添加到xcode头
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
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.
不需要用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
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下,此外还有两个扩展动态库可以自行检查。
-----------------------------------------------------------[配置方法如下: 1.拷贝/usr/local/mysql/support-files下的任意一个*.cnf文件到/etc/my.cnf; 2.在my.cnf文件的[client]后面添加一句default-character-s
二、测试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
#include
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
5. 运行
好了,至此,本文大概列举了我在mac上配置mysql的全过程及错误。希望对大家有所帮助。
[本站文章均为 李华明Himi 原创,转载务必在明显处注明:转载自【黑米GameDev街区】 原文链接: http://www.himigame.com/mysql/749.html ☞ 点击订阅 ☜
xcode mysql库_Mac+MySQL+Xcode数据库配置相关推荐
- asterisk mysql set(cdr(u_asterisk 相关数据库配置 使用
Linux/Unix下ODBC的安装: 先下载最新的unixODBC源码包(http://www.unixodbc.org/unixODBC-2.2.1.tar.gz)放到/usr/local下,然后 ...
- mac mysql版本_mac mysql安装哪个版本
下载MySQL 1 首先登陆到MySQL的官方网站下载MySQL社区版. MySQL有四个版本:MySQL社区版(免费):MySQL标准版:MySQL企业版:MySQL集群版. 2 在选择平台中,选择 ...
- mysql库文件修复_mysql数据库文件修复
多数情况下,数据库被破坏只是指索引文件受到了破坏,真正的数据被破坏掉的情况非常少.大多数形式的数据库破坏的的修复相当简单. 和前面的校验一样,修复的方式也有三种. 下面讲的方法只对MyISAM格式的表 ...
- xcode常用快捷键_Mac及Xcode常用快捷键
接触mac这么长时间,觉得mac最人性化.最不易让人察觉的有两个地方,第一就是mac键盘核心按键Command是由左手大拇指进行控制的,我们的大拇指可以轻松方便自然地按住Command按键,进行快捷键 ...
- poco mysql 库_Poco Mysql使用
连接时用到的一些字段, POCO官方文档中也有说明 \Data\MySQL\src\SessionImpl.cpp:69 options["host"]= "localh ...
- 苹果电脑装mysql失败_Mac mysql安装失败解决方法
在mac终端通过命令安装mysql,提示错误,解决方法如下: (1)安装命令:brew install mysql (2)提示错误: Error:Could not create /usr/local ...
- bt5 mysql root_MySQL_Linux利用UDF库实现Mysql提权,环境:
os:linux(bt5)database - phpStudy...
Linux利用UDF库实现Mysql提权 环境: os:linux(bt5) database:mysql 简述: 通过自定义库函数来实现执行任意的程序,这里只在linux下测试通过,具体到windo ...
- MySQL之自带四库之mysql库
一.概述 Mysql5.7版本自带4个数据库,information_schema.mysql.performance_schema.sys.其中mysql库是MySQL的核心数据库,类似于sql s ...
- mysql进入数据库命令_mysql 数据库基础命令
数据库命令: 进入 mysql 库; use mysql; 查看用户权限 select * from user where user='root' \G; 创建数据库 create database ...
- MySQL 中的mysql库探秘
简介:以前面试的时候,被面试官问到,你能大概说说mysql 中的mysql库都是什么,起什么作用吗?忽然一时还想不起来了,只知道是有权限用户.然后今天来写个文章,探究下. mysql 中有个库叫mys ...
最新文章
- matlab中real函数,Matlab中del2()函数学习笔记
- 关于manacher
- 抛弃PHP,WordPress.com以JavaScript重写
- 2019.1.11英语笔记1
- 启动物料帐后不可更改物料价格的处理方法
- 《编译原理》第二章知识点
- 使用富文本OHAttributedLabel
- retain、strong、weak、assign区别
- 法在计算机课程中的应用,任务驱动法在计算机办公课程中的应用
- ubuntu16.04 升级内核
- 特斯拉蛇形充电机器人_特斯拉将内存设备锁入手套箱内 确保哨兵模式/TeslaCam数据安全...
- 常见密码归纳(入门级)
- java替换特殊字符,如何替换字符串中的特殊字符?
- Autel Maxisys Elite Common FAQs
- python 在线编译器
- 文献(5): 单细胞转录组揭示人类纤维化皮肤病中成纤维细胞的异质性
- 15W无线充电芯片介绍
- 计算机虚拟化的基本概念,虚拟化和虚拟机基本概念
- 电脑录屏怎么录视频?了解几个小技巧
- 【汽车安全】ISO26262概要
热门文章
- mysql初始化登录报错解决-1
- Mongodb JAVA API
- JSSE Java与SSL
- openstack nova后端使用ceph rbd(增加在线迁移live_migrate和快照snapshot功能)
- php中数组自定义排序
- VMware基础架构和运营管理
- kafka中zookeeper的作用
- [MapReduce_8] MapReduce 中的自定义分区实现
- 软件天才都是训练出来的
- 解决 Error:No suitable device found: no device found for connection System eth0