易截截图软件、单文件、免安装、纯绿色、仅160KB

Ubuntu下出现Mysql error(2002)的解决方法

      过了一阵子后,为了写分布式作业,重新使用Mysql时,发现虽然启动成功了,但是连接的时候去出现如下错误
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)
根据提示是/var/run/mysqld/mysqld.sock文件不存在。
为什么会这样呢?
    在网上找了找答案,发现每个人说的都不一样,而且mysql.server文件中根本就不存在创建/var/run/mysqld/mysqld.sock文件的语句。
1.解决办法:
    $mysql --help
    根据帮助可以看到,mysql默认使用socket文件/var/run/mysqld/mysqld.sock文件,端口3306来连接mysql服务器。所以我们可以修改默认连接参数来试一试。
    $mysql --socket=/tmp/mysql.sock
那么,怎样知道需要把socket修改为/tmp/mysql.sock呢?
我是根据查看mysql进程得到的消息,使用如下命令:
    $ps aux|grep mysql
    可以看到启动的mysql进程使用了参数--socket=/tmp/mysql.sock --port=3306。所以使用命令:
    $mysql --socket=/tmp/mysql.sock后就能够成功连接上mysql服务器了。
2.追根究底
    根据命令
    $mysql --help
    的输出结果可以看到,mysql会按顺序读取配置文件/etc/my.conf,/etc/mysql/my.conf,/usr/etc/my.con,~/.my.conf
    在/etc/my.conf中可以看到
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
port = 3306
socket = /tmp/mysql.sock
这就是为什么mysql服务器启动后使用的socket是/tmp/mysql.sock
    在/etc/mysql/my.conf中可以看到
[client]
port = 3306
socket = /var/run/mysqld/mysqld.sock
[mysqld_saft]
socket = /var/run/mysqld/mysqld.sock
[mysqld]
port = 3306
socket = /var/run/mysqld/mysqld.sock
这样,两个文件设置都匹配,导致/etc/mysql/my.conf中的[client]覆盖了/etc/my.conf中的[client]设置,所以连接不正确。最简单的办法是删除这个文件
    $sudo mv /etc/mysql/my.conf /etc/mysql/mysql.conf_backup
    然后再使用默认参数连接mysql服务器就正常了。


相关文档:

mysql对自增id重新从1排序的两种方法

使用mysql时,通常表中会有一个自增的id字段,但当我们想将表中的数据清空重新添加数据时,希望id重新从1开始计数,用以下两种方法均可:
方法一:
alter table tablename drop column id;
alter table tablename add id mediumint(8) not null primary key auto_increment first;
方法二:
alter table tab ......

MySQL 一次执行多条语句的实现及常见问题

代码如下:
//链接时设定
mysql_real_connect( ..., CLIENT_MULTI_STATEMENTS );
//或者
//中途指定
mysql_set_server_option( mysql, MYSQL_OPTION_MULTI_STATEMENTS_ON ); //mysql是连接的名称
当使用执行多语句功能后,一定要读完整个resault集,否则会出现错误:Commands out of sync; you can't run this co ......

Windows 下 mysql 备份恢复命令


假设mysql 安装在c:盘,mysql数据库的用户名是root,密码是123456,数据库名是testdb,在d:盘根目录下面存放备份数据库,备份数据库名字为backup20070713.sql(20070713.sql为备份日期)
备份数据库:
mysqldump -uroot -p123456 testdb>d:/backup20070713.sql
恢复数据库:
删除原有数据库,建立数据库,把备份数据 ......

C#连接MySQL进行操作的方法

由于需要实现以下功能:
网关通过串口发送数据给PC机,PC机收集数据并解析保存到MySQL中,然后JSP页面读取MySQL中的数据并显示。
所以利用C#连接MySQL数据成为了必须要经过的过程,在此给予详细的说明。
1、下载需要的文件MySQLDriverCS,下载地址为:http://sourceforge.net/projects/mysqldrivercs
2、安装文件:MySQ ......

多服务器共享session(mysql)

<?php
/* vim: set expandtab tabstop=4 shiftwidth=4 foldmethod=marker: */
//===========================================
// 程序: mysql-Based Session Class
// 功能: 基于mysql存储的 Session 功能类
// 作者: yejr
// 网站: http://imysql.cn
// 时间: 2007- ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号