首页 > 资讯列表 > 编程/数据库 >> 数据库操作教程

freebsd下编译安装 mysql

数据库操作教程 2014-12-11 16:36:05 转载来源: 网络整理/侵权必删

本文为大家讲解的是在freebsd下编译安装 mysql的方法,感兴趣的同学参考下. mysql简介 MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。MySQL被广泛地应用在Internet上的中小型网站中

本文为大家讲解的是在freebsd编译安装 mysql的方法,感兴趣的同学参考下.

mysql简介

MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQL AB公司。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。

环境说明
系统:FreeBSD

软件:mysql 5.1.70

mysql安装

freebsd 这个系统说实话 真的没有ubuntu 方便 ,要安装个软件, apt-get install 下就可以了,而在freebsd 下面只能在ports 下去装,但通常情况下总是没资源,坑啊
所以只能自己 下包,自己装了 

1. 首先下 mysql-5.1.70.tar.gz

tar -zxvf mysql-5.1.70.tar.gz
 
cd mysql-5.1.70
 
./configure --prefix=/usr/local/mysql
 
make WITH_CHARSET=utf8 WITH_PROC_SCOPE_PTH=yes BUILD_OPTIMIZED=yes BUILD_STATIC=yes SKIP_DNS_CHECK=yes WITHOUT_INNODB=yes install clean
 
pw groupadd mysql
 
pw useradd mysql -g mysql 
 
/usr/local/mysql/bin/mysql_install_db --user=mysql
 
cp /usr/local/mysql/share/mysql/my-large.cnf /etc/my.cnf
 
cd /usr/local/mysql
 
chown -R root .
 
chown -R mysql var
 
chown -R mysql var/mysql/. 
 
chgrp -R mysql .    # .号千万不要忘了写
 
/usr/local/mysql/bin/mysql_install_db --user=mysql
 
./mysqld_safe --user=mysql &
 
装好之后 初始密码没有 
重设密码 
./mysqladmin -uroot -p password 123456
会提示 enter password: 直接按enter 键即可(这里要输的原来密码,原来的密码没有)
 
启动mysql 
root@gyl:/usr/local/mysql/bin # ./mysqld_safe --user=mysql &
 
关闭mysql 
root@gyl:/usr/local/mysql/bin # ./mysqladmin -uroot -p shutdown
 
进入mysql 
root@gyl:/usr/local/mysql/bin # ./mysql -u root -p

用navicate 去连的时候 要开启权限

root@gyl:/usr/local/mysql/bin # ./mysql -u root -p
mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
mysql> EXIT

测式使用

#include <iostream>  
#include <string.h>  
#include "mysql.h" //安装的mysql的头文件所在的位置  
 
using namespace std;  
 
string host = "192.168.67.130";  
string user = "root";  
string pwd = "123456";  
string dbname = "test";  
string sql = "select * from user";  
unsigned int port = 3306; //   
 
int status;  
 
int main()  
{  
 
    MYSQL *mysql;  
    mysql = mysql_init(0);  
    MYSQL_RES *result;  
    MYSQL_ROW row;  
 
    if (mysql_real_connect(mysql, host.c_str(), user.c_str(), pwd.c_str(), dbname.c_str(), port, NULL, CLIENT_FOUND_ROWS) == NULL){  
 
        cout << "connect failure!" << endl;  
 
        return EXIT_FAILURE;  
 
    }  
    else{  
 
        cout << "connect success!" << endl;  
 
    }  
 
    mysql_set_character_set(mysql, "gbk");  
 
    status = mysql_query(mysql, sql.c_str());  
 
    if (status != 0){  
 
        cout << "query failure!" << endl;  
 
    }  
 
    cout << "the status is :" << status << endl;  
 
    result = mysql_store_result(mysql);  
 
    while (row = mysql_fetch_row(result)){  
 
        cout << row[1] << "|" << row[2] << endl;  
 
    }  
 
    mysql_free_result(result);  
 
    mysql_close(mysql);  
 

g++ -o testmysql testmysql.cpp -lmysqlclient -I /usr/local/mysql/include/mysql -L /usr/local/mysql/lib/mysql/
 
编译可以成功,但是执行 ./testmysql 时
提示如下错误
Shared object "libmysqlclient.so.16" not found, required by "testmysql"
 
应该是 里面的代码的链接路径不对,但是又没办法改代码,只能改路径
 
root@gyl:/usr/local/mysql/lib/mysql # ln -s libmysqlclient.so.16 /usr/lib/libmysqlclient.so
root@gyl:/usr/local/mysql/lib/mysql # cp libmysqlclient.so.16 /usr/lib

完成.


标签: freebsd 编译 安装 mysql


声明:本文内容来源自网络,文字、图片等素材版权属于原作者,平台转载素材出于传递更多信息,文章内容仅供参考与学习,切勿作为商业目的使用。如果侵害了您的合法权益,请您及时与我们联系,我们会在第一时间进行处理!我们尊重版权,也致力于保护版权,站搜网感谢您的分享!

站长搜索

http://www.adminso.com

Copyright @ 2007~2024 All Rights Reserved.

Powered By 站长搜索

打开手机扫描上面的二维码打开手机版


使用手机软件扫描微信二维码

关注我们可获取更多热点资讯

站长搜索目录系统技术支持