- 博客(10)
- 资源 (4)
- 收藏
- 关注
原创 mysql更改数据库文件存放位置的问题
<br /> 我的fedora系统上所建立的mysql数据库文件默认是存储在/var/lib/mysql目录下的,这个路径是在mysql的配置文件/etc/my.cnf中进行设置的。现在我想改变数据库的保存目录为/root/mysql/db_save_pos/。于是,我将/etc/my.cnf文件中的datadir=/var/lib/mysql 一行改为:datadir=/root/mysql/db_save_pos,接着关闭mysql,并把/var/lib/mysql目录下的所有文件拷贝到新目
2010-11-29 20:50:00 2647
原创 编译操作mysql数据库的C程序时的连接库错误
以下为使用C API写的操作数据库school的程序,保存文件名为mysql.c。#include #include #include int main(){ MYSQL mysql; MYSQL_RES *res; MYSQL_ROW row; char sql[50]; int t; sprintf(sql,"select*from teacher"); mysql_init(&mysql); if(!mysql_real_connect(&mysql,"localhost","root","","
2010-11-29 12:51:00 1910
原创 无法删除mysql的数据库的解决办法
我自己建立了一个数据库school,但是使用命令:drop database school;删除本数据库时却删除失败,系统提示出现了错误,错误代码为:ERROR 1010 (HY000): Error dropping database(can't rmdir './school/',errno:17) 我在网上搜到了别人的结局方法,有人说要首先找到mysql的school路径,在该路径下通常会有些文件是用户操作遗留的,删除此文件后,再执行删除数据库操作就可以成功删除数据库了。
2010-11-28 22:22:00 25788
转载 MySql中的char和varchar
VARCHAR是一种比CHAR更加灵活的数据类型,同样用于表示字符数据,但是VARCHAR可以保存可变长度的字符串。其中M代表该数据类型所允许保存的字符串的最大长度,只要长度小于该最大值的字符串都可以被保存在该数据类型中。因此,对于那些难以估计确切长度的数据对象来说,使用VARCHAR数据类型更加明智。VARCHAR数据类型所支持的最大长度也是255个字符。 VARCHAR型和CHAR型数据的这个差别是细微的,但是非常重要。他们都是用来储存字符串长度小于255的字符。 假如你向一个
2010-11-27 21:06:00 1979
原创 LINUX下安装MySql后的设置问题
<br /> 我安装完mysql后,不能运行mysql命令,这是由于我还没有把可执行文件的路径加入到当前的环境变量中。于是,我通过命令:PATH="$PATH":/root/Software/mysql/bin (/root/Software为我的mysql安装路径)将我的可执行文件的目录加入的环境变量中。默认情况下,需要重启电脑才能使这个设置生效。我们可以通过命令 source .bash_profile来使刚才的设置立刻生效。<br /> 这时,我通过在终端下执行 man my
2010-11-26 22:16:00 3532
转载 linux内核0.11版本进程调度问题
下面简单说一下linux 0.11内核中进程调度的原理。 0.11核中进程的调度主要由四个部分数组成:调度初始化、调度、睡眠、唤醒。 一、调度初始化:sched_init() 我们知道在内核初始化(main)过程中,要将任务0转换到用户态下执行,也就是建立Linux中的第一个用户程序。既然任务0之前是在内核态下执行的,所以用的是系统的ldt、和tss,要在用户态下执行,就要使用用户态下的ldt、tss,那么,调度初始化的其中一个任务就是建立任务0的ldt和gdt
2010-11-18 23:03:00 4475
原创 linux进程切换和TSS结构
TSS 全称为task state segment,是指在操作系统进程管理的过程中,进程切换时的任务现场信息。 i386体系从硬件上支持任务间的切换。为此目的,它增设了一个新段:任务状态段(TSS),它和数据段、代码段一样也是一种段,记录了任务的状态信息。 与其它段一样,TSS也有描述它的结构:TSS描述符表,它记录了一个TSS的信息,同时还有一个TR寄存器,它指向当前任务的TSS。任务切换的时候,CPU会将原寄存器的内容写出到相应的TSS,同时将新TSS的内容填到寄
2010-11-18 11:41:00 12098 1
原创 查看QQ的端口号
首先通过任务管理器找到QQ的进程号,然后在命令提示符中输入:netstat -ano 就可以显示所有进程所使用的端口号。根据所得到的进程号就可以查看QQ使用的端口号。在我观察时,我的机器上的QQ使用了8个端口号,都是使用udp与服务器进行通信的,而且QQ每次启动所使用的端口号不同。
2010-11-17 20:43:00 11906 1
原创 寄存器变量
变量一般情况下都存在于内存中。如果程序需要使用某个变量,CPU的控制器将从内存中取得变量值后会将其暂存在寄存器中。寄存器就是CPU自己的"小内存",它的特点是"容量小、速度快"。正常情况下,编程语言本身无法直接操作寄存器。但某些时候,一些变量可能会被频繁地使用,这时,频繁地对内存进行存取操作就会耗费较多的时间;如果我们能够有效地利用CPU的寄存器,就会显著提升程序的运行效率。 C语言中使用关键字register来声明局部变量为寄存器变量。寄存器变量的值会被存放在CPU的寄存器中,每当需要使用它们时,
2010-11-16 23:04:00 6173
转载 _exit和exit的区别
在linux的标准库函数中,有一套称作高级I/O的函数,我们熟知的printf 、fopen 、fread 、fwrite都在此列,他们也被称作缓冲I/O。其特征是对应每一个打开的文件,都存在一个缓冲区,在内存中都有一片缓冲区,每次读文件会多读若干条记录,这样下次读文件时就可以直接从内存的缓存中取出,每次写文件时也仅仅是写入到内存的缓冲区,等待满足一定的条件(达到一定的数量,或者遇到特定字符,如换行和文件结束符EOF),再将缓冲区的内容一次性的写入文件,这样就大大增加了文件读写的速度,但也为我们编程带来了一
2010-11-15 20:44:00 8012 1
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人