Windows7下不能用localhost连接mysql服务器的问题

MYSQL 用命令行:mysql -uroot -p

ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’
(10061)

服务已经运行。

查下来是:windows7不认localhost导致。

 

 

   
自从上次在Windows7
搭建PHP环境之后,我就到网上找了些PHP源码来调试,这些PHP都可以完美运行,其中有些程序是需要安装mysql数据库的,我就特地下载并装上了
mysql-5.1.51和phpMyAdmin-3.3.7。但是每次安装程序到了配置数据库这一步的时候都连接不上mysql数据库,我可以确定数据
库用户名和密码是正确的,而且随便换什么程序安装也是这种情况。

  
我检查了下mysql并没有发现问题,我的mysql服务器用的是本机地址localhost、默认root和空密码,而且我用phpMyAdmin是
可以连接上mysql数据库的,百度多次都没有找到答案,今天想再次测试的时候想到本机地址也可以输入IP即“127.0.0.1”,本来只是抱着试一试
的想法,没想到安装成功了。

 
我们知道localhost和127.0.0.1都是本机地址的意思,输入localhost,系统也会自动解析到127.0.0.1,而且我的
phpMyAdmin也都是用localhost这个地址打开的,说明localhost确实已经解析到了127.0.0.1,但是不知道为什么不能用
localhost这个地址来连接mysql数据库。

 
因为大多PHP程序安装的默认数据库地址localhost,每次都要去修改成127.0.0.1觉得有点麻烦,既然知道了原理就好办了,我们可以通过
修改HOSTS文件来达到我们的目的。首先用记事本打开HOSTS文件“C:\WINDOWS\system32\drivers\etc
\hosts”,打开后如图所示在其中加上一条“127.0.0.1
localhost”并保存。如果你是WIN7系统,可以参考下WIN7下修改HOSTS文件这篇文章。

  
进行完上面的操作以后我们就可以直接用localhost连接mysql服务器了。我不知道有没有人碰过这种问题,还是只有WIN7系统才有这种情况,反正我就是通过这种方法解决的。

来源:Windows7下不能用localhost连接mysql服务器的问题

exe4j打包+Eclipse打包插件说明 GUI项目打包EXE文件的总结

1.好用的eclipse打包插件
fat_jar

 该插件可以导出第三方架包。


插件使用方法
:


解压
net.sf.fjep.fatjar_0.0.27.zip 
plugins
文件复制到Eclipse目录下,叠加plugins文件


重起
eclipse


就可在
eclipse中右击选择“Build Fat
Jar”


如果插件不能升效,则请
eclipse\configuration\org.eclipse.update目录删除后再启动eclipse:)

 

2.exe4j生成EXE的方法了。


你把
jar包打好了吗?打好的话我就直接说用exe4j生成EXE的方法了。

 exe4j的下载地址:下载地址:下载地址:http://www.ej-technologies.com/download/exe4j/files.php

 生成步骤

a)
利用
Eclipse将所需要的主类打成可独立运行的jar包,注意添加manifest属性和MainClass

b)
新建一个
exe4j工程

c)
选择“
JAR in exe
mode

d)
Configure
application
中的配置

i. Short name随便写.

ii. Ourput Driectory

选择输出路径。

e)
Configure
Executable
中的配置

i. Executable
type
有三个选项图形控制台.或服务。从简单点开始吧,这里我们选console

ii. Executable
name
:填写目的输出源的名称。如test.exe

iii. Icon
file
exe图标文件,但必须是.ico文件(这个类型的图片网上很多选个自己喜欢的)

f)
Configure Java
invocation
中的配置

i.
Classpath
:选中我们所生成的jar包以及运行该jar文件所需要的类库

ii.
Main-Class
:选中我们所需要运行的主类。

iii.Arguments(可选项):输入参数。我们这里暂不需要。

g)Configure
JRE
中的配置:

i). Minimum
Version
:写一个需要运行该程序所需的最低的就JVM的版本,比如1.4

h)
一直
next,对于所遇到的步骤选项都默认,直到finishOK。编译成功后,在你的输出目录上就会有一个崭新的exe程序了。

火狐firefox下实现背景音乐的加载zz

火狐firefox页面背景音乐播放的方法。

<BGSOUND src=”ghost.files/g.wav”
loop=99>

使用上面的代码,在IE浏览器中听到音乐,但是在火狐firefox下却不行,想来火狐firefox也是为了用户的安全考虑,取消了这些功能!

后来改用这样的代码

<DIV align=center>
<embed src=”ghost.files/g.wav” height=”1″ width=”1″
>
</DIV>

firefox依然不能在线播放音乐;背景音乐依然不能播放!

于是在google搜索这个问题,不过找到的都是关于客户端的一些设置,要装上一些额外的音乐插件才行【后面我会给出做法的】!
这里我想要做的是如何让火狐firefox用户同IE用户一样,不用做太多的设置也能听到背景音乐!

后来从flash影片上得到启示

g.wav导入flash中,生成一个ghost.swf文件,设置宽度1,高度也为1.(后来想想宽和高其实多少都无所谓的,(*^__^*),反正舞
台中也没内容
),让我高兴的是,导入后ghost.swf的大小只有g.wav的十分之一,这样就更有利于背景音乐的加载了…..

然后在ghost.htm中放入下面的一段代码

<object
classid=”clsid:d27cdb6e-ae6d-11cf-96b8-444553540000″
codebase=”http://fpdownload.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=8,0,0,0
width=”1″ height=”1″ id=”ghost”
align=”middle”>
<param name=”allowScriptAccess” value=”sameDomain”
/>
<param name=”movie” value=”ghost.swf”
/><param name=”quality” value=”high”
/><param name=”bgcolor”
value=”#ffffff” /><embed
src=”ghost.swf” quality=”high” bgcolor=”#ffffff” width=”1″
height=”1″ name=”ghost” align=”middle”
allowScriptAccess=”never” allowNetworking=”internal” autostart=”0″ type=”application/x-shockwave-flash”
pluginspage=”http://www.macromedia.com/go/getflashplayer
/>
</object>

OK,大功告成,火狐firefox中也可以听到那声尖利的鬼叫声了……

PS:让火狐Firefox也可以听背景音乐

1、安装 iTune+Quick

下载:http://www.apple.com/quicktime/download/

或是:下载http://www.apple.com/itunes/提供的iTune

安装时:只要一直按”Next”就好,尤其建立多媒体文件的”关联性连接”时,不要取消勾选,要让他与QuickTime建立连接。

2、安装 火狐Firefox 的bgsound to embed 扩展。

下载:https://addons.update.mozilla.org/extensions/moreinfo.php?id=146&vid=237

【 注:上面的下载要用到用户名和密码,我注册了一个:Email address:[email protected]
|Password: arthur  共享下,希望大家别改密码,方便大家】

3、检查是否正确安装

重启火狐Firefox,在地址栏输入”about:plugins”,看是否有QuickTime的Plugins。

PS:转换swf的工具
TotalVideoConverter视频转换绿色汉化版V3·12.rar 下载
http://www2.100g.cc/ContentPane.aspx?down=ok&filepath=ylzb4587/Ó¦ÓÃÈí¼þ001/Total
Video Converter.rar

80端口被占用的解决办法

在win03的cmd命令窗口输入netstat -abn
->c:/port80.txt
然后到c盘port80.txt文件中找到占用80端口的程序pid,记下pid。
打开任务管理器,点击“查看”/选择列,勾选“PID(进程标识符)”,
然后单击“进程”标签,找到80端口对应的pid,就可以看到是那个程序占用的了,更改这个程序的port,再重启这个程序,使更改生效。

我是安装apache提示端口占用,用同样的方法,以前很少遇到,这次是应为安装的迅雷bt把80端口占用了,用上面的方法,顺利解决。

MySQL模式:Strict Mode    zz

I. Strict
Mode阐述
根据 mysql5.0以上版本 strict mode (STRICT_TRANS_TABLES) 的限制:
1).不支持对not null字段插入null值
2).不支持对自增长字段插入”值,可插入null值
3).不支持 text 字段有默认值

看下面代码:(第一个字段为自增字段)
$query=”insert into demo
values(”,’$firstname’,’$lastname’,’$sex’)”;
上边代码只在非strict模式有效。

$query=”insert into demo
values(NULL,’$firstname’,’$lastname’,’$sex’)”;
上边代码只在strict模式有效。把空值”换成了NULL.

II.让数据库支持Strict Mode

1.对数据库结构进行以下改进来支持strict mode:
1) 给所有not null字段都设置非null默认值,字符串默认值为 ”,数值默认值为 0,日期默认值为 ‘0000-00-00
00:00:00’
2) 去掉text字段的默认值
3) 规范化改进: 把 title 字段统一改为
varchar(255),把有默认值的null字段改为not null字段

2.如果安装的PHP程序数据库结构关闭Strict mode
1).一个是安装mysql5.0(含以上)版本的时候去掉strict mode。
编辑 my.cnf,关闭Strict Mode:
sql-mode=”NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION”

2). 另一个就是修改查询语句。例如在
if ($this->dbcharset) {
   @mysql_query(“SET NAMES
“.$this->dbcharset);
}
后面执行
mysql_query(“SET @@sql_mode = ””);

注意确定你使用的是MySQL5

mysqli方式类似,就是执行的是
mysqli_query($this->connection_id, “SET @@sql_mode =
””);

ultraedit, editplus, notepad 与 UTF-8 BOM 与 PHP

编写或修改php代码后,进行调试时会出现如同以下几点问题:

    –不能登入或者不能登出;
    –页顶出现一条空白;
    –页顶出现错误警告;
    –其它不正常的情况。

分析原因:

   
类似WINDOWS自带的记事本等软件,在保存一个以UTF-8编码的文件时,会在文件开始的地方插入三个不可见的字符(0xEF 0xBB
0xBF,即BOM——Byte Order
Mark)。它是一串隐藏的字符,用于让记事本等编辑器识别这个文件是否以UTF-8编码。对于一般的文件,这样并不会产生什么麻烦。

   
    但对于
PHP来说,PHP在设计时就没有考虑BOM的问题,不会忽略UTF-8编码的文件开头BOM的那三个字符,会把BOM作为该文件开头正文的一部分。由于必须在<?或者<?php后面的代码才会作为PHP代码执行,所以将会造成在页面上输出这三个字符,显示效果就要看浏览器了,一般是一个空行或是一个乱码。由于在html一开头有这3个字符的存在,即使页面的
top padding
设置为0,也无法让整个网页紧贴浏览器顶部。由于受COOKIE送出机制的限制,在这些文件开头已经有BOM的文件中,COOKIE无法送出(因为在
COOKIE送出前PHP已经送出了文件头),所以登入和登出功能失效。一切依赖COOKIE、SESSION实现的功能全部无效。

解决办法:

   
在编辑、更改任何文本文件时,请务必使用不会乱加BOM的编辑器。Linux下的编辑器应该都没有这个问题。WINDOWS下,请勿使用记事本等编辑器。推荐的编辑器是:Editplus
2.12版本以上;EmEditor;UltraEdit(需要取消‘添加BOM’的相关选项);Dreamweaver(需要取消‘添加BOM’的相关选项)等。

   
对于已经添加了BOM的文件,要取消的话,可以用以上编辑器另存一次。(Editplus需要先另存为gb,再另存为UTF-8。)

    ultraedit, editplus, notepad四个工具对UTF-8
的支持不相同,下面是对四个工具对UTF-8 支持的总结:
  UTF-8 BOM header: 是三个字符: EF BB
BF。
  1. notepad
        notepad 在保存时,选择UTF-8
格式,会在文件头写上BOM header.
  2. editplus
        文件保存时,选择UTF-8 格式,不会在文件头写上 BOM
header.
  3. ultraedit
        ultraedit 对UTF-8
的支持最为完备。在advanced->configuration中可以   
选择文件保存时是否写上BOM header.
  4. vi
        指的是Linux 下的vim, 如果UTF-8
文件开头有BOM header, 其能够正常显示UTF-8编码,否则,显示为乱码。
  还有一些编码转换工具,比如,可以用java 写一个简单的编码转换工具,这些工具是不会增加BOM header的。


附录:

   
UltreEdit的配置,将选项“保存时对所有UTF-8写入UTF-8文件头标记(BOM)”关闭。即:Write UTF-8 BOM
header to ALL UTF-8 files when saved OFF。
    不同版本有可能没有,而要把“自动检测utf8”关掉。这样看utf8文件就乱码了。
    建议用editplus了。

牢骚:
   
    我被eclipse搞得很郁闷。

经管08018_XP起步:其它部分

“XP起步”部分,到现在已经把正确的思维习惯介绍完毕。

而这些方面:
1、简单设计;
2、共享代码所有权;
3、编码标准;
4、每周40小时工作制
会自然的依序出现。

其它的:
1、现场客户;
2、验收测试;
3、教练和跟踪者
就可能要花花一些时间。

一、简单设计:
1、运行所有测试;
2、不包括重复代码;
3、清楚地表现出程序员对全部代码的意图;
4、包括尽可能少的类和方法。

简单的才会保留下来!

如何做到简单设计:
1、首先写验收测试;
2、保持每个类只负责一件事;
3、使用Demeter法则;——待介绍
4、使用定性的概念;——待介绍
5、使用CRC卡片(白板)来探索;——付诸行动!离开电脑(开发环境),在白板前进行设计

二、代码所有权
开发团队中的每个人都具有权力和义务修改它。
纪律——单元测试+代码版本控制

三、现场客户
如果客户没有给你提供一个全职的、一流的合作人员,请求他们免除这个项目。
因为他们不是认真的。
例外:
1、管理者或者开发者之一就是领域专家;
2、做探索性工作,客户也不知道自己想要什么;
3、已经有良好的沟通渠道。

四、验收测试
知道你什么时候做完。
单元测试给开发人员信心;验收测试给客户信心。
验收测试是开发者和客户直接的合同。
如何写验收测试?什么时候写验收测试?测试什么?
自动化验收测试。
功能测试与单元测试。功能测试应该是开发人员跟很多测试人员共同完成。

五、编码标准
保持团队不会被无用的小事弄得心烦意乱。
格式化编辑工具+好的易于执行的协议!

六、加班不是答案
“可持续发展”!
加班:你不想工作的时候而花费在工作上的时间。

七、一幅画胜过千言万语
找到好的“比喻”

八、寻求指导
跟一个伟大的老师学习1天,胜过自己勤奋的学习1000天。

九、保持记录
搜集数据、保持记录、做好跟踪:
1、鼓励每个人更好的估算;
2、更好的识别项目进度;
3、识别出问题的范围。
跟踪:
1、估算和实际执行的情况;
2、创建的和通过的验收测试。

wiki!

经管08017_XP起步:持续集成及过程至上

“持续集成”:降低风险、更易查错、保持速度。
 
如何持续集成:
1、每个配对做足够的单元测试;
2、“集成机器”——公用;
3、保持代码最新;(版本控制和管理)
 
到达任何地方都没有捷径可走。
始终停留在过程中,不要偏离方向,注意:
1、提高注意力;
2、使漂流趋势更明显;
3、保持领先;
4、行为规律;
5、避免最后期限的压力;
6、首先考虑广度;——产品的业务价值
7、与客户重新协商;
8、一起坚持
9、推迟非业务的细目;
10、偶尔加班;
11、了解并跟踪方法的效果。