一、前期准备:
本文用redhat Enterprise 5来介绍:
1.由于redhat Enterprise 5 中自带一个mysql的版本,如果在安装linux前未选择mysql的安装此步就可跳过,因为我当时安装了现在将其卸载 ,步骤如下: a. 查找已安装的myslq 版本:
#rpm -qa | grep mysql (注意大小写,如果mysql 不行就换MySQL) 在屏幕上将显示已安装的mysql包名如:mysql-5.0.22-2.1.0.1 ; b. 将搜索出的包名卸载:
#rpm -e --nodeps mysql-5.0.22-2.1.0.1 (nodeps表示强制删除)
c. 再次查找该包名,如果没有结果输出则表明已将该版本的mysql卸载了 ;
2. 准备安装资源,如下:
a. perl-DBI-1.5.2-1.fc6.i386.rpm(该包为是安装mysql的依赖,没它mysql安装不起,查看是否安装,如果安装了就不需要了,可以通过 #rpm -qa | grep perl* 查看是否已经安装,该包在linux系统盘上可以找到,以下提供该包下载)
b.MySQL-server-community-5.1.51-1.rhel5.i386.rpm 和MySQL-client-community-5.1.51-1.rhel5.i386.rpm 和
MySQL-devel-community-5.1.51-1.rhel5.i386.rpm(此包主要用于编译linux下的 Qt--x11的mysql驱动)
(可以从http://dev.mysql.com/downloads/mysql/5.1.html 下载相应linux相应的版本)
c. 准备好相应的安装包传到 linux系统/home上;
3. 开始安装:
a. 先安装 perl-DBI-1.5.2-1.fc6.i386.rpm
可以通过 #rpm -qa | grep perl* 查看是否已经安装,如果安装了就不需要安装,我的是已经安装好的。 如果没装请执行下面命令;
#rpm -ivh perl-DBI-1.5.2-1.fc6.i386.rpm (查看是否安装成功 #rpm -qa | grep perl-DBI* )
b. 安装好perl,接着先安装 mysql server版
#rpm -ivh MySQL-server-community-5.1.51-1.rhel5.i386.rpm
(查看是否安装成功 #rpm -qa | MySQL ,查看该进程是否启动 #ps -ef | grep MySQL ,由于安装好server版后就已经启动了)
c. 安装好server版,开始接着安装 client版:
#rpm -ivh MySQL-client-community-5.1.51-1.rhel5.i386rpm (查看是否安装成功 #rpm -qa | MySQL )
d. 好了到此就已经安装完毕,测试是否可以运行: #mysql
将出现 mysql> 命令符安装成功,由于是默认用户为root没有密码所以可以直接进入; 如果出现提示:
Welcome to the MySQL monitor. Commands end with ; or \\g. Your MySQL connection id is 30
Server version: 5.1.51-community MySQL Community Server (GPL)
Copyright (c) 2000, 2010, Oracle and/or its affiliates. All rights reserved. This software comes with ABSOLUTELY NO WARRANTY. This is free software, and you are welcome to modify and redistribute it under the GPL v2 license
Type 'help;' or '\\h' for help. Type '\\c' to clear the current input statement. mysql>
到此 恭喜你,你安装成功,然后在提示符下输入: mysql>show databases; <注意以分号结尾> 出现:
+--------------------+ | Database | +--------------------+ | information_schema | | llcc | | mysql | | test | +--------------------+ 4 rows in set (0.00 sec) mysql>
可以看见当前的数据库.
Mysql数据库安装到这里就结束了,下面介绍编译Qt ---x11的mysqll驱动.
编译Qt ---x11的mysqll驱动.
编译之前请确保你已经正确安装了Qt--x11版本和上面的mysql数据库.
如过按Qt Assistant 所说的一样,编译是不完整的,在编译后会出现一些不可预知的错误, 下面贴出自己的方法:
#cd $QTDIR/src/plugins/sqldrivers/mysql
#qmake \"INCLUDEPATH+=/usr/include/mysql\" \"LIBS+=-L/usr/lib/mysql -lmysqlclient_r\" mysql.pro
注意:请查看你mysql的 include和lib路径,通常安装上面安装mysql的路径都是在/usr/include/mysql和/usr/lib/mysql中
#make
#make install
#cd $QTDIR/plugins/sqldrivers #ls
如果已经生成libqsqlite.so libqsqlite.so.debug libqsqlmysql.so libqsqlmysql.so.debug三个文件,恭喜你 已经安装成功.
来测试一下: #cd /home #vi test.cpp Copy code:
/***************************/ #include #include int main(int argc, char **argv) { QApplication app(argc, argv); QSqlDatabase db = QSqlDatabase::addDatabase(\"QMYSQL\"); // 使用mysql数据库驱动 db.setHostName(\"localhost\"); db.setDatabaseName(\"test\"); // 我们之前建立的数据库 db.setUserName(\"root\"); // 默认root用户名 db.setPassword(\"\"); // 初始密码为空 qDebug(\"list.....:\"); qDebug() << QSqlDatabase::drivers(); bool ok = db.open(); // 尝试连接数据库 if(!ok) qDebug(\"connection faild\"); else qDebug(\"connection success\"); db.close(); return app.exec(); } 如果显示 '.. .. .. connection success等相信 ,恭喜你 编译成功.. 因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- igbc.cn 版权所有 湘ICP备2023023988号-5
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务