不知你用的是什么代码,不过据我实验,以下代码是可用的 【来自 http://blog.csdn.net/andy_yf/article/details/7487307】
#include <stdlib.h>#include <stdio.h>
#include "mysql.h"
int main (int argc, char *argv[])
{
MYSQL *conn_ptr
conn_ptr=mysql_init(NULL) //连接初始化
if(!conn_ptr){
fprintf(stderr, "mysql_init failed\n")
return EXIT_FAILURE
}
conn_ptr = mysql_real_connect(conn_ptr, "localhost", "moldao","newpassword","moldao_test", 0, NULL, 0) //建立实际连接
//参数分别为:初始化的连接句柄指针,主机名(或者IP),用户名,密码,数据库名,0,NULL,0)后面三个参数在默认安装mysql>的情况下不用改
if(conn_ptr){
printf("Connection success\n")
}
else {
printf("Connection failed\n")
}
mysql_close(conn_ptr) //关闭连接
return EXIT_SUCCESS
}
连接mysql数据库需要以下步骤:
安装mysql开发包, linux下是mysql安装的时候全选就行了, linux 下直接安装mysql-devel
新建工程,占贴代码,注意修改实际的用户名、密码 ...
设置包含目录, 在windows下, 找到你的mysql安装位置,找到include文件夹, 设置ide增加该文件夹到包含目录 【可能是 C:\Program Files\MySQL\MySQL Server 5.0\include】
设置连接目录, 同设置包含目录一样 找到mysql的lib目录,设置ide 【可能是 C:\Program Files\MySQL\MySQL Server 5.0\lib\opt 】
设置连接选项, 需要设置ide连接选项,增加 -lmysql
编译连接运行
问题一:数据库实例如何理解呢 实例(instance):一组Oracle 后台进程/线程以及一个共享内存区,这些内存由同一个计算机上运行的线程/进程所共享。这里可以维护易失的、非持久性内容(有些可以刷新输出到磁盘)。就算没有磁盘存储,数据库实例也能存在。也许实例不能算是世界上最有用的事物,不过你完全可以把它想成是最有用的事物,这有助于对实例和数据库划清界线。实例和数据库之间的关系是:数据库可以由多个实例装载和打开,而实例可以在任何时间点装载和打开一个数据库。实际上,准确地讲,实例在其整个生存期中最多能装载和打开一个数据库!
一般来说,我们的一个数据库对应一个实例,但在集群RAC情况下,共享数据库文件时,一个数据库是可以被多个实例同时使用的。
问题二:oracle数据库的实例,其中“实例”是什么意思? 实例指的是内存,数据库指的是物理文件。通过实例指向的数据库,来访问数据库中的数据。
问题三:数据库实例是什么意思 多个 SQL Server 实例 ,Microsoft SQL Server 2000 支持在同一台计算机上同时运行多个 SQL Server 数据库引擎实例。每个 SQL Server 数据库引擎实例各有一套不为其它实例共享的系统及用户数据库。
问题四:数据库实例 问这个问题说明你对数据库的概念还不太了解,这是最基本的概念。
数据库是什么?数据库是一个逻辑上的概念,简单的说就是相互关联的一会数据。而对应到实际的物理概念上,就是磁盘上的一个或者一堆文件,里边包含着数据。但是光有数据不行,数据库有很多功能,比如可以接受用户连接,给用户提供数据,这样就需要有“程序”。所以说关闭状态的数据库,就是磁盘上的程序文件,加上数据文件。
想要使用数据库,就要把它打开,让上边说的“程序”运行起来。实例就是指计算机内存中处于运行状态的数据库程序,以及为这些程序分配的一些内存空间。实例是位于内存中的,只在数据库处于运行状态时才存在。实例负责实现给用户提供网络连接、读写数据文件等等各种功能。
不同的数据库产海有些不同,Oracle中一个实例只能连接一个逻辑上的“数据库”,甚至是不同机器上运行着的不同实例同时连接一个数据库(RAC)。SQL Server和My SQL中的“实例”则比较独立,可以随时打开或者关闭某一个数据库。
问题五:什么是数据库的实例instance 首先说说,数据库是做什么?数据库是用来长久存储数据的,而我们大家都知道内存只能临时存储,磁盘等才能真正存储数据.那你说数据库会放那里呢?肯定是存放在磁盘上,其实数据库就是磁盘上的一个文件。
从上面我们得出结论:数据库==磁盘上的文件.
既然数据库可以看成磁盘上文件,我们怎么使用数据库呢?
如果说我们可以直接使用数据库,那就等价与直接使用磁盘上的文件.我们知道这样的一个常识:必须把磁盘上的文件读入内存才能使用.这就与我们以前所知道的一个常识相违背了.
那正确的流程是不是应该这样呢?把磁盘上文件先读入内存,然后再使用呢.
对了,这个才是使用数据库的正确流程.
数据库如何读入内存呢?
这个时候,就是我们要介绍的instance(实例)了.实例就是内存结构和一组后台进程.
实际上,正常的数据库读入内存的过程是,由实例中一组后台进程从磁盘上将数据文件读入到实例的内存中,然后经过在内存中对数据的 *** 作再从实例的内存中经过一组后台进程写到数据库中.
那实例相对与数据库而言,应该就是数据库的运行环境(随不准确但也很贴切).
我们知道了instance和database的区别后.下面我们做一个Oracle的例子,一块深刻的理解下这两个概念.
在Oracle中打开一个数据库,这个时候我们要使用sqlplus了.sqlplus是oracle的一个连接工具,相当于sql server中的查询分析器.
使用
用户名:system
密码:manger(自己在装Oracle时设定的)
点登录进入sqlplus.
登录sqlplus以后,system这个用户是没有权限启动实例的,所以我们这时要更换登录用户.
使用sys用户连接
的命令如下 :
conn sys as dba
密码:
输入完后.可以再输入如下命令查看当前用户:
show user
一:下面就可以打开数据库了
1.启动实例(instance)
startup nomount
2.将数据库装载到实例(instance)中
alter database mount
3.打开数据库
alter database open
二:关闭数据库:
1.shutdown immediate(包括三个步骤如下所述:)
首先关闭数据库
然后从实例上卸载数据库
最后关闭实例
通过Oracle打开以及关闭一个数据库的例子我们可以清楚的区分.数据库(database)和实例(instance)的概念.
问题六:在数据库中,添加一个用户实例是什么意思,请问用户实例怎么理解? 就是一个用户专用的数据库引擎。
问题七:什么是oracle实例,什么是oracle数据库,二者有什么区别? 这个问题如果回答得形象点就是:
一个数据库可以包含一个或者多个实例
实例的定义:由 *** 作系统后台进程和分配的内存区域构成。说
得简单点就是oracle在nomou骸t状态就分配了内存区域,一个实
例也就差不多快形成了。
问题八:什么是数据库的实例 所谓“数据库实例”,实际上就是数据库服务器引擎。每个SQL Server数据库引擎实例各有一套不为其他实例共享的系统及用户数据库。
在一台计算机上,可以安装多个SQL SERVER,每个SQL SERVER就可以理解为是一个实例。
有两种类型的 SQL Server 实例:
1)默认实例:默认实例仅由运行该实例的计算机的名称唯一标识,它没有单独的实例名。如果应用程序在请求连接 SQL Server 时只指定了计算机名,则 SQL Server 客户端组件将尝试连接这台计算机上的数据库引擎默认实例。
2)命名实例:除默认实例外,所有数据库引擎实例都由安装该实例的过程中指定的实例名标识。应用程序必须提供准备连接的计算机的名称和命名实例的实例名。
计算机名和实例名以格式puter_name\instance_name指定。 一台计算机上可以运行多个命名实例。
问题九:什么是数据库实例? 所谓的“实例”,就是一个 SQL Server 数据库引擎
一个 数据库引擎 下面,又可以建立 多个数据库
例如我的计算机,SQL Server 实例的名字是 SQLEXPRESS
这个实例下面,有好几个数据库。
为什么要命名。就是我机器上,很有可能安装了 SQL Server 2005, 又安装了 SQL Server 2008。 2个服务器, 需要不同的名字来区分。
对于 网络请求来说
如果我要访问一个 SQL 数据库
必须提供 机器名 + 实例的名字,才能访问
例如:
C:\Documents and Settings\wzq>sqlcmd -S localhost\SQLEXPRESS
1>use stock
2>go
已将数据库上下文更改为 'Stock'。
问题十:oracle数据库的实例,其中“实例”是什么意思? 实例指的是内存,数据库指的是物理文件。通过实例指向的数据库,来访问数据库中的数据。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)