WAMP中mysql的密码修改方法

      每次重装系统或者重装wamp之后,都要重新搭建php开发环境,这不又来了。

      有些东西久了没使用它,就容易生疏。像这里所说的wamp中的mysql密码、phpmyadmin密码等问题,我们在搭建环境的时候或许很快可以搞定,但时间久了要重新搞的时候又感觉有点麻烦了。因此这次我决定把这个过程给记录下来,以便以后翻阅。

前提是wamp已经安装好了,那么第一步首先通过WAMP打开mysql控制台。

QQ图片20131025120437.jpg

提示输入密码,因为现在是空,所以直接按回车。

QQ图片20131025120721.jpg

然后输入“use mysql”,意思是使用mysql这个数据库,提示“Database changed”就行。

QQ图片20131025120959.jpg

然后输入要修改的密码的sql语句“update user set password=PASSWORD(‘admin’) where user=’root’;”,注意,sql语句结尾的分号不能少,提示Query OK……即可。

QQ图片20131025121320.jpg

最后输入“flush privileges;”,不输入这个的话,修改密码的操作不会生效的。

QQ图片20131025121445.jpg

然后输入“quit”退出。

      如果在浏览器中访问phpmyadmin出现如下错误:#1045 - Access denied for user ‘root’@’localhost’ (using password: YES) 

QQ图片20131025121743.jpg

那么说明mysql的密码已修改了,但是phpmyadmin相对于的配置文件还未修改。请在wamp的phpmyadmin目录下找config.inc.php进行修改。比如我的电脑中,目录是E:\wamp\apps\phpmyadmin3.5.1,那么在这个目录下找到config.inc.php文件并打开,ctrl+F查找$cfg[‘Servers’][$i][‘password’],将其改为$cfg[‘Servers’][$i][‘password’]=’admin’,admin即是修改后的密码。

QQ图片20131025121450.jpg

将文件从一台服务器上复制到另一台服务器上的方法

需求:两台Windows Server 2008服务器,要将服务器A中的一个.mdb文件copy到另一台服务器B上,以便于服务器B使用该文件。服务器A的IP地址假设是192.168.3.7。

方法步骤:

1.在服务器A中该.mdb所在的目录设置为共享目录,且设置共享权限,赋everyone修改权限。2.设置好了

之后,到服务器B开始→运行中 输入 \192.168.3.7,测试能否访问服务器A共享目录,且能往里面进行

文件的读写操作。

3.如果测试成功,可编写如下脚本:

@echo off

title 数据文件备份脚本

echo 正在连接服务器…

net use \192.168.3.7

copy “C:\Telephone Billing System\bill.mdb” \192.168.3.7\billdb\ /y

echo 备份成功!3秒后脚本自动退出…

ping -n 3 127.1 >nul

exit

将该脚本根据文件所在的实际目录和服务器的实际IP进行修改,然后保存为.bat批处理文件。

4.在服务器B中将服务器A中所设的共享目录映射为网络驱动器。这样,服务器A中那个包含.mdb文件的共

享目录在服务器B中就如同本地目录一样了。

4.将上述所创建的.bat文件放到服务器B的某个固定目录,然后在服务器B中创建任务计划即可实现定时自

动从服务器A中复制文件到服务器B中了。

VS2008无法识别工具版本3.5 (the tool version 3.5 is unrecognized)

重装visual studio 2008后,新建项目时,提示“无法识别工具版本3.5 (the tool version 3.5 is unrecognized)”的错误。最后找到解决方法是将下列代码导入注册表。先保存为.reg文件,再双击执行即可。

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\3.5]
"DefaultToolsVersion"="2.0"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions]

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\2.0]
"MSBuildToolsPath"="C:\\WINDOWS\\Microsoft.NET\\Framework\\v2.0.50727\\"

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSBuild\ToolsVersions\3.5]
"MSBuildToolsPath"="C:\\WINDOWS\\Microsoft.NET\\Framework\\v3.5\\"

 

未定义类型Microsoft.VisualBasic.PowerPacks

本文背景:

一个vb6改造成vb.net的winform项目,打开项目时部分窗体无法显示,主要提示以下两个错误:命名空间”Microsoft.VisualBasic.PowerPacks”中不存在类型或命名空间名称”LineShape”(是缺少程序集引用吗?)

命名空间”Microsoft.VisualBasic.PowerPacks”中不存在类型或命名空间名称”ShapeContainer”(是缺少程序集引用吗?)

小结一下问题: 未定义类型 Microsoft.VisualBasic.PowerPacks.ShapeContainer 

                    未定义类型 Microsoft.VisualBasic.PowerPacks.LineShape

尝试解决:

在程序中添加了Microsof.VisualBasic,提示该引用已默认添加了。

添加Microsoft.VisualBasic.PowerPacks.vs后发现问题依旧。

最终解决:

到官网http://msdn.microsoft.com/en-us/vbasic/bb735936.aspx下载了Microsoft.VisualBasic.PowerPacks最新版安装,然后在项目中添加Microsoft.VisualBasic.PowerPacks的引用。然后发现窗体显示正常了,问题圆满解决了。

10位IT领袖给应届毕业生的10条忠告



10位IT领袖给应届毕业生的10条忠告,在走向独立和自主的伟大征程中,吸取他们的经验。

在毕业生们迈出象牙塔之时,他们应该听从哪些人的建议?在走向独立和自主的伟大征程中,他们该吸取哪些教训?听一听各领域成功者们的建议或许不错,这些人是富有远见的商业领导者,他们从无到有建立起自己的帝国,并都跻身世界最富有的人之列。以下是历年来多位IT领袖在毕业典礼上所做演讲的节选,我们从中提取出了可供应届毕业生采纳的建议:

苹果创始人史蒂夫·乔布斯(Steve Jobs):把每一天都当成生命中的最后一天

在我17岁的时候,我读到了一句箴言,差不多是这样的:“如果你把每一天都当作生命中的最后一天去生活的话,那么终有一天你会发现自己是正确的。”这句话给我留下了深刻的印象,从那时算起的33年以来,我每天早晨都会对着镜子问自己:“如果今天是我生命中的最后一天,我还会做自己今天即将要做的事吗?”当答案连续多次都是“不”时,我就知道自己需要做些改变了。

微软创始人比尔·盖茨(Bill Gates):你的能力越大,人们对你的期望也就越大

我的母亲在我被哈佛大学录取的那一天曾经感到非常骄傲,她从没有停止督促我去为他人做更多的事情。在我结婚的前几天,她主持了一个新娘进我家的仪式。在这个仪式上,她高声朗读了一封关于婚姻的信,这是她写给梅琳达(Melinda)的。那时,我的母亲已经因为癌症病入膏肓,但是她还是认为这是又一个传播自己信念的机会。在那封信的结尾,她写道:“你的能力越大,人们对你的期望也就越大。”

戴尔创始人迈克尔·戴尔(Michael Dell):永远不要当房间里最聪明的那个人

永远不要尝试成为房间里最聪明的那个人,如果你是的话,我建议你请来一位更聪明的……或者自己换个不同的房间。在职场中,这叫做人际关系。在组织中,这叫做队伍建设。在生活中,这被称为家庭、朋友和圈子。我们都是彼此的礼物,在我成长为一名领导者的过程中,我得到的启示一遍遍地重复,即最有益的经验是来自人与人之间的关系。

亚马逊创始人杰夫·贝索斯:天赋得来很容易,而选择却颇为艰难

我斗胆做一个预测:在你们80岁时某个追忆往昔的时刻,当你一个人静静地对内心诉说自己的人生故事,其中最为充实、最有意义的那段讲述会被你们作出的一系列决定所填满。最后,是选择塑造了我们的人生。为你自己塑造一个伟大的人生故事吧。

Facebook创始人马克·扎克伯格:如果你喜欢自己做的事,事情会容易很多

当你回家吃饭,盘子里是最难吃的蔬菜,如果你愿意可以勉强自己吃下去。但如果你是玩游戏,即使非常难,只要自己喜欢,你也会努力通关。如果你喜欢自己做的事,事情会容易很多,而你也将拥有更大的决心。

微软CEO史蒂夫·鲍尔默(Steve Ballmer):不要激情,要有韧性

激情是对某件事物产生兴奋的能力,而控制力和韧性则是保持这种兴奋的能力。如果你考察一下我们这个行业的那些创业公司,你会发现它们大多数都失败了。如果你再考察一下那些获得成功的公司,比如微软、苹果、谷歌以及Facebook,凡是你能叫出名字的,它们都经历过困难时期。你取得了一些成功,你也撞了几回南墙,你为新的点子和创新尝试新的途径,但未能成功,这时候决定事业成败的就是,你有多顽强,你有多大的控制力,你有多乐观以及你有多少韧性。

谷歌创始人拉里·佩奇(Larry Page):追寻伟大的梦想,你不会遇到竞争

我认为,追寻雄心万丈的梦想通常更加容易,我知道这听起来完全是一派胡言。不过,既然没有别的人疯狂到会做这件事情,你就没有竞争对手了。达到这种疯狂程度的人是如此之少,以至于我感觉自己跟他们都认识。他们像狗群一样漫游,像胶水一样相互亲近,这些最优秀的人乐于接受艰巨的挑战,这就是在谷歌发生的事情。

谷歌董事长埃里克·施密特(Eric Schmidt):不要刻意制定计划

不要刻意制定计划,那些有关计划的东西,你们可以扔掉了。在我看来,一切都关乎机遇和争取到自己的运气。如果你观察那些最成功的人士,你会发现,他们工作努力并充分利用了机遇,但他们并不知道那些机遇会降临到自己头上。你无法为创新制定计划,你也无法为发明制定计划。你所能做的就是,尽自己最大的努力呆在正确的地方,并随时准备着。举例来说,我们都知道,心脏起搏器在其70年历史中经历了各种各样的形式才最终投入实用。它被植入到一个可怜人的体内,在更换了25台起搏器后,他仍然活着。不过,这个故事的重点在于,如果心脏起搏器没有被发明出来,这个人就不会有存活的机会,这一切你永远都搞不懂。

摩托罗拉股东卡尔·伊坎(Carl Icahn):独立思考

 

当你们踏入社会,你们要成为两种人中的一种,你们要成为自己独立思考的人,我认为这个世界和我们的公司正在为此等待。一些公司管理者真的能够做到这一点,他们富有创新性,能够反潮流而动……你们应该试着对抗潮流,即使这可能会让你们失去工作或者晋升的机会。但最终,你还是要独立思考,勇于创新。如果你有了想法,那就去拍桌子吧,不要担心,因为这正是公司所需要的。

雅虎创始人杨致远:不要被经济低迷的新闻吓坏

我能向你们保证,经济低迷正是孕育伟大事物的时候,就像现在这样。雅虎创立于上世纪90年代初的经济衰退时期,其他伟大的公司、想法和产品,甚至是社会运动,都是在人们抛弃教条和采用新方法的时候发展成形的。从某些方面看,在这种经济恢复时期毕业是再好不过的时机。

摘自酷勤网

今天是程序员节,祝大家节日快乐

         程序员节是一个国际上被众多科技公司和软件企业承认的业内人士节日。日期是在每年的第256(十六进制为0x100,或28)天,也就是平年的9月13日或闰年的9月12日。

        它是俄罗斯的一个官方节日,并且有诸多其他国家也庆祝这个节日,它们包括中国,以色列,孟加拉国,智利,巴西,墨西哥,奥地利,德国,加拿大,克罗地亚,法国,危地马拉,印度,比利时,澳大利亚,新西兰,波兰,斯洛文尼亚,英国,美国和乌拉圭。

        之所以选择256(28),是因为它是一个被程序员们所熟知的8位元基本数字。用1个字节(等于8位元)最多能表示256个数值,而且在平年中,256是2的最大幂中小于365的值。

        白色被选为程序员节的主题色。在红绿蓝24位深(RGB)颜色空间里,每种原色可以有256种级别(从0到255一共256个数值)的深浅变化,当三种原色都达到最大深浅值,即为十六进制的0xFFFFFF时,表示白色。所以全世界的程序员们会穿着白色来庆祝这一天。

       设立这个节日要归功于瓦伦丁·巴尔特(Valentin Balt),并行技术网页设计公司(Parallel Technologies web design company)的一名职员,2002年,他收集签名向俄罗斯联邦政府请愿,请求将这一天定为程序员节。

       2009年7月24日,俄罗斯联邦通信与大众传媒部提出了新的节日安排方案,设立程序员节。。9月11日,俄罗斯总统梅德韦杰夫签署了这个法案。

       (来自: 开源中国)

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version……的解决方案

在导入sql脚本到mysql数据库时,发生了如下错误:

#1064 - You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ‘TYPE=MyISAM AUTO_INCREMENT=4’ at line 15 

随即查找原因,发现原来的sql脚本是几年前用mysql 2.5.0-rc2版本创建的,而当前的mysql版本是5.5.24。问题可能就出在这里了,实际上,从mysql 5.5开始,TYPE=MYISAM这样的类型的命令已失效,使用ENGINE替换了TYPE。因此将sql脚本中的“TYPE=”批量替换成“ENGINE=”即可。

#1045 - Access denied for user 'root'@'localhost' (using password: YES)的解决方案

今天重装了wamp,在http://localhost/phpmyadmin下修改了root的密码,无法登录了错误提示:#1045 - Access denied for user ’root’@’localhost’ (using password: YES)

操作过程如下:

phpmyadmin中,执行如下SQL语句:
       use mysql ;
       update user set password=PASSWORD(‘123456’) where user = ‘root’ ; #
设置你新的密码

flush privileges ;

然后就在phpmyadmin无法登录了。这个问题可以说每次安装phpmyadmin都会遇到,主要就是因为在phpmyadmin的配置文件里面,原来的密码并未改变,因此无法登录。

参考解决方案:

1.找到wamp存放目录:我的是:D:\wamp\apps\phpmyadmin3.5.1

2.使用Ctrl+F快捷查找$cfg[‘Servers’][$i][‘password’]为它修改新密码如:

$cfg[‘Servers’][$i][‘password’] = ‘123456’;即可。

装饰模式,我的肤浅理解

      所谓装饰,就是一些对象给主体对象做陪衬。这是我的理解。好比说我的办公桌,需要电脑、电话、文件夹、盆栽等作为装饰。那么,办公桌就是一个主体对象,电脑、电话等装饰品就是那些做陪衬的对象。这些办公用品准备好了,该怎么摆放到办公桌上呢?可以有多种方案。而且,我可以随时往办公桌上增加一支签字笔,增加一枚公章等等。

       目前,可归纳如下:

      A主体对象:办公桌

      B装饰者:电脑、电话、文件夹、盆栽、签字笔、公章

      C装饰者可以装饰主体对象,即B可以装饰A

什么是装饰模式?一个标准的定义是:动态地将责任附加到对象上。若要扩展功能,装饰者提供了比基础更有弹性的替代方案。

 

根据我的理解,装饰模式可以这样定义:能够动态地为对象添加功能,同时不会对类进行修改。

201308062.jpg

      对于上面的UML类图,我们可以发现装饰模式的两个要点:

      1.装饰者(办公用品)需要知道装饰对象(桌子)。(UML类图的聚合关系)

      2.装饰对象(办公桌)需要把一系列装饰行为交给装饰者(办公用品),让装饰者帮忙装饰,因此用到了继承。 

      在办公桌的装饰过程中,办公桌的装饰交给另一个对象来处理,办公桌不需要去管装饰这个过程。也就是把自身的一些行为交给别人来完成,而且这样有个明显的好处就是,这些处理顺序可以改变。可以先摆好电脑,再装上电话,也可以先装个电话在摆好电脑,它们的顺序可以变换。下面是装饰模式的简单的编码实现:

using System;

using System.Collections.Generic;


using System.Linq;

using System.Text;

namespace DecorateTest

{

//桌子

public abstract class Desk

{

public abstract void Decorate();

}

//办公桌

public class officeDesk : Desk

{

public override void Decorate()

{

Console.WriteLine(“办公桌已经交给Decoretor来装饰了”);

}

}

//装饰者

public class Decorator : Desk

{

private Desk desk;

//需要知道装饰对象,对应UML中的聚合

public void setDecorate(Desk desk)

{

this.desk = desk;

}

//装饰对象把装饰这个行为交给我来处理了

public override void Decorate()

{

if (desk != null)

{

desk.Decorate();

}

}

}

//电脑

public class Computer : Decorator

{

public override void Decorate()

{

base.Decorate();

Console.WriteLine(“电脑已经装饰摆放好了”);

}

}

//电话

public class Telephone : Decorator

{

public override void Decorate()

{

base.Decorate();

Console.WriteLine(“电话已经摆放好了”);

}

}

//公章

public class Seal : Decorator

{

public override void Decorate()

{

base.Decorate();

Console.WriteLine(“公章已经放好了”);

}

}

class Program

{

static void Main(string[] args)

{

//对办公桌进行装饰

officeDesk office = new officeDesk();

Computer computer = new Computer();

Telephone telephone = new Telephone();

Seal seal = new Seal();

//装饰顺序:电脑、电话、公章

computer.setDecorate(office);

telephone.setDecorate(computer);

seal.setDecorate(telephone );

seal.Decorate();

Console.ReadLine();

}

}

}

利用Nginx下的伪静态规则解决“No input file specified”问题

      昨天把博客转到了新的空间,解析了域名,今天发现能ping通了,首页能打开,但是点击详细页面的时候却发现网页一片空白,只有一行提示字:No input file specified.

      网上搜索了一下,有各种说法,都未能解决。后来找到比较接近成功的解决方法,就是添加如下伪静态规则:

RewriteEngine?On

RewriteBase?/

RewriteCond?%{REQUEST_FILENAME}?!-f

RewriteCond?%{REQUEST_FILENAME}?!-d

RewriteRule?^(.)$?/index.php?/$1?[L]

      而以上的伪静态代码又不适用于我的博客空间,因为我的是Nginx服务器,因此需要符合Nginx下的伪静态规则。结合Nginx下伪静态的特点,经过修改,最终得出的解决办法是为服务器添加以下伪静态规则:

if (!-e $request_filename) {

rewrite ^(.)$ /index.php?/$1 last;}

      伪静态规则正确添加后,问题随之解决。