Chinaunix首页 | 论坛 | 博客
  • 博客访问: 186599
  • 博文数量: 50
  • 博客积分: 2567
  • 博客等级: 少校
  • 技术积分: 495
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-14 10:44
文章分类

全部博文(50)

文章存档

2011年(3)

2010年(29)

2009年(11)

2008年(7)

我的朋友

分类: 数据库开发技术

2010-06-25 15:13:06

1.fedora9上如果安装了系统自带的mysql,首先可以将其卸载。
(1)检查安装的mysql相关软件:
rpm -qa | grep MySQL
显示:(仅仅是例子)
MySQL-server-5.1.48-1.glibc23.i386
MySQL-client-community-5.1.48-1.rhel5.i386
(2)卸载语句,从下往上卸载
rpm -e MySQL-client-community
rpm -e MySQL-server
注意:rpm -e是rpm包的专用卸载语句,后面跟着包的名称,后面的版本号不需要。其他软件的卸载相似。

2.安装mysql软件
我下载的是MySQL-server-5.1.48-1.glibc23.i386.rpm和MySQL-client-5.1.48-1.glibc23.i386.rpm
下载地址:
安装命令:
rpm -ivh MySQL-server-5.1.48-1.glibc23.i386.rpm
rpm -ivh MySQL-client-5.1.48-1.glibc23.i386.rpm

3.mysql的相关操作
(1)启动关闭mysql服务
service mysql start
service mysql stop
(2)编写程序连接mysql往往需要用户名密码
给根用户建立一个密码,密码是111111:
usr/bin/mysqladmin -u root password 111111
(3)登录mysql
mysql -u root -p
输入密码:111111

4. c语言例子程序fedora9下连接mysql数据库
在进行之前先做一下工作:
(1)将mysql相关的头文件、库文件加入到系统目录,便于编程中使用
mkdir /usr/include/mysql   编程中只需要#include 就行了
cp /usr/local/mysql/include/* /usr/include/mysql/    加入头文件
cp /usr/local/mysql/lib/mysql/* /usr/lib/
加入库文件,往上有cp /usr/local/mysql/lib/* /usr/lib/这样操作的,但是在我的系统中/usr/local/mysql/lib/下是mysql文件夹而不是库文件,因此为了把.a库文件拷贝到系统默认库路径下我对其
做了修改。读者需要明白我们的目的是要把libmysqlclient.a 这样的文件拷贝到/usr/lib/下,便于编译的时候直接用-L /usr/lib lmysqlclient.a -lz, 而不用给出一个具体的mysql目录。

(2)test.c文件
#include
#include

main() {
    MYSQL *conn;
    MYSQL_RES *res;
    MYSQL_ROW row;

   char *server = "localhost";
   char *user = "root";
   char *password = "111111"; /* 此处改成你的密码 */
   char *database = "zigbee"; /* 我建立了一个zigbee数据库 */

    conn = mysql_init(NULL);

   /* 建立数据库连接 */
   if (!mysql_real_connect(conn, server,
          user, password, database, 0, NULL, 0)) {
      fprintf(stderr, "%s\n", mysql_error(conn));
      exit(1);
   }

   /* 发送查询 */
   if (mysql_query(conn, "show tables")) {
      fprintf(stderr, "%s\n", mysql_error(conn));
      exit(1);
   }

    res = mysql_use_result(conn);

   /* 输出表名 */
   printf("MySQL Tables in mysql database:\n");
   while ((row = mysql_fetch_row(res)) != NULL)
      printf("%s \n", row[0]);

   /* 关闭连接 */
    mysql_free_result(res);
    mysql_close(conn);
}
编译命令:
gcc test.c -o test -L /usr/lib/ -lmysqlclient -lz
可以生成test可执行文件, ./test执行即可。

当然可以用以下命令:
gcc test.c -o test -L /usr/local/mysql/lib/mysql/*.a -lz
(4)如果遇到如下错误
Can't connect to local MySQL server through socket '/tmp/mysql.sock'
执行下面命令在/tmp/下建立一个链接:
ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock

ps:
1. 用命令打开指定文件夹: nautilus 文件夹名
2. vi命令,上翻一页ctrl+u, 下翻一页:ctrl+f
3. MySQL安装完成后它的数据库文件、配置文件和命令文件分别在不同的目录,了解这些目录非常重要.
(i)数据库目录
/var/lib/mysql/
(II)配置文件
/usr/share/mysql(mysql.server命令及配置文件)
(III)相关命令
/usr/bin(mysqladmin mysqldump等命令)
(IV)启动脚本
/etc/rc.d/init.d/(启动脚本文件mysql的目录)

参考文献
1. http://hi.baidu.com/wangpeng1314/blog/item/77f73c31f93da6af5fdf0e5c.html
2. http://hi.baidu.com/soulshape/blog/item/65063c4f99abe535afc3aba6.html
3. http://hi.baidu.com/lbbmac/blog/item/f1a24d80094132da9023d907.html

阅读(1917) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-07-15 17:17:32

www.001gx.cn 真空包装 www.021-62844414.com 运输公司 www.daoteng56.com 物流 www.jinanzhuanxian.cn 上海到济南货运公司 www.shanghaihuoyun.com 货运公司 www.021-62844414.com 货运公司 www.an56.com 货运公司 www.shanghaihuoyun.com 货运 www.b2bgouwu.com.cn 上海物流公司erp162z华宜物流公司 www.jiaoyib2b.com.cn 铁木盘 www.daoteng56.com 上海物流 www.43156.net.cn/news/cc_01.htm 上海到长春的物流公司 www.an56.com 货运物流erp162z华宜物流公司