02 2014 档案
摘要:连接Mysql格式: mysql -h主机地址 -u用户名 -p用户密码1、连接到本机上的MYSQL。首先打开命令行窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输密码.注意用户名前可以有空格也可以没有空格,但是密码前必须没有空格,否则让你重新输入密码。如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是: mysql>2、连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令: mysql -h11
阅读全文
摘要:ubuntu上安装mysql非常简单只需要几条命令就可以完成。 1.sudo apt-get install mysql-server 2.apt-get isntall mysql-client 3. sudo apt-get install libmysqlclient-dev 安装过程中会提示设置密码什么的,注意设置了不要忘了,安装完成之后可以使用如下命令来检查是否安装成功: sudo netstat -tap | grep mysql 通过上述命令检查之后,如果看到有mysql 的socket处于 listen 状态则表示安装成功。 登陆mysql数据库可以通过如下命...
阅读全文
摘要:使用I/O multipexing 的网络编程中,一般需要采用非阻塞网络编程的风格,防止服务端在处理高连接量大时候阻塞在某个文件描述符上面,比如某个socket 有大量的数据需要写,但是内核发送缓冲区已经填满,无法在一次write中将需要发送到数据发送出去,程序就会阻塞在该处,导致select/poll/epoll_wait() 此时不能处理其它到来的请求,同样read或者accept也可能出现阻塞的情况,比如当客户端发起connect,之后立刻关闭该链接,在服务端尚未调用accept之前就关闭了该连接,当后来服务端accept得以调用此时完成队列中又没有完成的三次握手的连接,accept..
阅读全文
摘要:以下是APUE 3rd edition 的preface,从04年的第二版到现在的第三版,APUE内容有所更新。点击下载。It’s been almost eight years since I first updated Advanced Programming in the UNIXEnvironment, and already so much has changed.• Before the second edition was published, The Open Group created a 2004 edition of the Single UNIX Specification
阅读全文
摘要:前两篇文章介绍了select,poll,epoll的基本用法,现在我们来看看它们的区别和适用场景。首先还是来看常见的select和poll。对于网络编程来说,一般认为poll比select要高级一些,这主要源于以下几个原因:poll() 不要求开发者计算最大文件描述符加一的大小。poll() 在应付大数目的文件描述符的时候速度更快,因为对于select()来说内核需要检查大量描述符对应的fd_set 中的每一个比特位,比较费时。select 可以监控的文件描述符数目是固定的,相对来说也较少(1024或2048),如果需要监控数值比较大的文件描述符,就算所监控的描述符很少,如果分布的很稀疏也会效
阅读全文
摘要:上一篇介绍了select的基本用法,接着来学习一下poll和epoll的基本用法。首先来看poll:#include int poll (struct pollfd *fds, unsigned int nfds, int timeout); poll() 采用了struct pollfd 结构数组来保存关心的文件描述符,而不是像select一样使用三个fd_set ,pollfd结构体定义如下:struct pollfd { int fd; /* file descriptor */ short events; /* requested events to watch */...
阅读全文
摘要:Linux Socket 编程中I/O Multiplexing 主要通过三个函数来实现:select, poll,epoll来实现。I/O Multiplexing,先构造一张有关描述符的列表,然后调用一个函数,直到这些描述符中的一个已准备好进行I/O时,该函数才返回。在返回时,它告诉进程哪些描述符已准备好可以进行I/O。本文具体介绍一下select 和poll的用法,给出简单的demo代码,简要分析一下这两个函数的使用易出错的地方。 #includeint select(int maxfdp1, fd_set *restrict readfds, fd_set *restrict ...
阅读全文