系统管理 维护监控 简单生活
技术实践
搞定CHM文件无法显示网页
十 21st
一本别人推荐的书,想先预览下内容再去买,可惜找了很久,也只有一英文原片的CHM版,(CHM电子书里容易藏恶意代码,,如果不能确定可信任,不要随便打开.推荐看PDF)下载回来后,左边的目录都看得得到,点每个目录右边边框里都是无法显示网页。网上搜集了下. 没找到具体是什么原因, 但找到以下几种解决方法,我试过方法四. 有效果.
方法一:修改注册表,建一个文本文件添加如下内容:然后保存为以reg结尾的文件.双击这个新建的reg文件,将它导入注册表. 不过这种方法不安全,因为它将将浏览区域等级调整为3了,存在安全隐患,故不推荐。
REGEDIT4 [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp] [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\HTMLHelp\1.x\ItssRestrictions] "MaxAllowedZone"=dword:00000003
方法二:查找目录名称是否有问题,目录名称中有 "#" 字符,去掉有 CHM 文件就显示正常了。
方法三:有时候如果CHM是中文也会打不开,改成英文字符试验下。
方法四:双击此 .chm 文件, 在“打开文件安全警告”对话框,单击以清除“打开此文件前始终询问”复选框。
小知识:
CHM 意为 Compiled HTML。以CHM为扩展名的文件图标通常为一个带问号的文档图标,表示帮助文档,是 Microsoft 自 Windows 98 以来提供的一种帮助文档格式的文件,用于替代 Windows 95 下的 HLP(Help) 文件。Microsoft 自 Windows 98 以来,操作系统中都自带解释器(打开 CHM 文件的工具),即 Windows 安装目录下的 HH.EXE。CHM 文件可以通过官方免费提供了 HTML Help Workshop 生成,它的源文件是 HTML 文件。
参看的原资料:http://hi.baidu.com/ggyy667/blog/item/ed8cf9d49ab93902a08bb7cd.html
MySQL 独特的用户机制
十 14th
MySQL 的用户名跟防火墙类似,它还包含了登陆限制机制。例如,对于下面三个 MySQL 用户名:
1. dba@'localhost' -- dba 只能从本机登陆 2. dba@'%' -- dba 可以从网络中任意机器访问 MySQL 服务器 3. dba@'192.168.1.201' -- dba 可以从 192.168.1.201 机器上访问 MySQL 服务器
MySQL 的用户机制太棒了!如果我们创建用户:
dba@'localhost' dba@'192.168.1.201'
那么 dba 用户就只能从本机和IP地址为 192.168.1.201 的机器上连接 MySQL 服务器。并且这两个 dba 用户可以有各自不同权限和密码。这对于 MySQL 数据库安全来说,无疑又是一道重要保障。
另外需要注意的是:
一、对于 create user dba 来说,实际上等价于 create user dba@'%'
mysql> user mysql; mysql> select * from user; +-----------+----------+------------------------------------------- | Host | User | Password +-----------+----------+------------------------------------------- | localhost | root | *00B030D4A50E401A71BE65401BACC15BDF491830 +-----------+----------+------------------------------------------- mysql> create user dba identified by 'dbaany'; mysql> select * from user; +-----------+----------+------------------------------------------- | Host | User | Password +-----------+----------+------------------------------------------- | localhost | root | *00B030D4A50E401A71BE65401BACC15BDF491830 | % | dba | *FF34267EA1B8DFE97F151870830EC8FE9DF816B4 +-----------+----------+-------------------------------------------
二、对于 MySQL 数据库中同时存在用户 dba@'localhost' 和 dba@'%' 来说,从本地访问 MySQL 时,用户应是 dba@'localhost' ;
从远程访问 MySQL 时,用户环境应是 dba@'%'
mysql> create user dba@'localhost' identified by 'dbalocal'; mysql> select * from user; +-----------+----------+------------------------------------------- | Host | User | Password +-----------+----------+------------------------------------------- | localhost | root | *00B030D4A50E401A71BE65401BACC15BDF491830 | localhost | dba | *B44F37235B0B12C2DE1B9DF83105ACF23FA29EFF | % | dba | *FF34267EA1B8DFE97F151870830EC8FE9DF816B4 +-----------+----------+------------------------------------------- C:\>mysql -u dba -p Enter password: dbaany ERROR 1045 (28000): Access denied for user 'dba'@'localhost' (using password: YES) C:\>mysql -u dba -p Enter password: dbalocal Welcome to the MySQL monitor. Commands end with ; or \g. mysql>
三、访问 MySQL 数据库的时候,只需指定用户名 dba,而不是用户全名 dba@'localhost'或者 dba'%'。
C:\>mysql -u dba@'localhost' -p Enter password: dbalocal ERROR 1045 (28000): Access denied for user 'dba@'localhost''@'localhost' (using password: YES) C:\>mysql -u dba@'%' -p Enter password: dbaany ERROR 1045 (28000): Access denied for user 'dba@'%''@'localhost' (using password: YES) C:\>mysql -u dba -p Enter password: dbalocal Welcome to the MySQL monitor. mysql>
四、远程访问 MySQL 数据库时,应指定 host 参数。
mysql> create user dba@'192.168.1.110' identified by 'dba110'; mysql> select * from user; +---------------+----------+------------------------------------------- | Host | User | Password +---------------+----------+------------------------------------------- | localhost | root | *00B030D4A50E401A71BE65401BACC15BDF491830 | localhost | dba | *B44F37235B0B12C2DE1B9DF83105ACF23FA29EFF | 192.168.1.110 | dba | *E298453C1D169F9C724BE989EFD5581BAB4381AE | % | dba | *FF34267EA1B8DFE97F151870830EC8FE9DF816B4 +---------------+----------+------------------------------------------- C:\>mysql -h 192.168.1.110 -u dba -p Enter password: dba110 Welcome to the MySQL monitor. mysql>
五、注意 mysql.user 表中用户 dba 的顺序,虽然我们创建 dba 用户的顺序是:
1. dba@'%' 2. dba@'localhost' 3. dba@'192.168.1.110' 但 MySQL 在处理用户登陆的时候却采用不同的顺序。 +---------------+----------+ | Host | User | +---------------+----------+ | localhost | dba | | 192.168.1.110 | dba | | % | dba | +---------------+----------+
如果 dba 用户在本机登陆,MySQL 首先尝试使用 dba@localhost 用户;如果该用户不存在,则 MySQL 会选择 dba@'%'用户来完成登陆。如果 dba 用户在远程登陆,MySQL 首先尝试使用 dba@'192.168.1.110' 用户来登陆,如果 ip 地址不匹配,MySQL 最终会使用dba@'%'用户来完成登陆。当然,如果不存在dba@'%',则登陆失败。
最新评论