Windows 10 UAC设置卡死Bug

最新的:Microsoft Windows [版本 10.0.14393],安装成功之后第一件事情就是将“更改用户账户控制设置”设置为“从不通知”。点确认后卡死,问题是ChsIME.exe微软拼音造成。更换其他第三方输入法后问题解决。看来Windows 10 is still buggy。

WIN10 UAC卡死.png

MySQL 5.6从*.ibd文件恢复数据

MySQL我最常用的两种数据引擎是MyISAM和InnoDB。最近在本地WAMP环境下安装了WordPress博客。某一天发现无法登录WordPress后台了,直接跳转到WordPress的安装页面。看来是PHP无法连接MySQL数据库造成的。我继续用phpMyAdmin、SQLyog等客户端工具连接数据库查询WordPress表数据都返回一句法文错误信息,翻译过来的意思是“该数据表不存在”。打开 D:\wamp\bin\mysql\mysql5.6.17\my.ini配置文件,找到lc-messages=fr_FR修改为lc-messages=en_US 保存信息变为看得懂的英文。但是奇怪的是show tables 显示出来有的表,但是运行select全部报错table doesn’t exist.

又打开Windows事件查看器(eventvwr.msc),筛选事件源为MySQL,发现了大量这种的警告信息:

InnoDB: Cannot open table wordpress/wp_posts from the internal data dictionary of InnoDB though the .frm file for the table exists. See http://dev.mysql.com/doc/refman/5.6/en/innodb-troubleshooting.html for how you can resolve the problem.

经过两天两夜的大量Gooogle,发现此问题充斥着网络,貌似是一个普遍问题,而且是一个对MySQL新手来说容易犯的错误。MyISAM数据表.frm可以从一个服务器移动到另外一个服务器,而InnoDB数据引擎则不能直接移动,否则会出现tablespace不一致的问题。这种情况下日志会这种报错:

InnoDB: in InnoDB data dictionary has tablespace id N,
InnoDB: but tablespace with that id or name does not exist. Have
InnoDB: you deleted or moved .ibd files?
InnoDB: This may also be a table created with CREATE TEMPORARY TABLE
InnoDB: whose .ibd and .frm files MySQL automatically removed, but the
InnoDB: table still exists in the InnoDB internal data dictionary.

了解了这么多,中文网络里面的一般做法就是修改my.ini,加上

[mysqld]
innodb_force_recovery = 1

innodb_force_recovery的值可以是1、2、3、4、5、6,具体的含义参见:https://dev.mysql.com/doc/refman/5.0/en/forcing-innodb-recovery.html。但是我尝试了这样的方法还是找不到数据表。看来从MySQL服务器配置上恢复数据的方法走不通。我想尝试直接通过InnoDB的数据文件ibdata1、ib_logfile0、ib_logfile1,还是wordpress目录下的wp_posts.frm和wp_posts.ibd文件直接恢复。用Winhex分辨查看了以上文件,发现wp_posts.ibd里面有明文的数据内容(记得将Winhex的Charset设置为UTF-8)。然后Google到了从ibd文件恢复数据的方法。此方法略微“复杂”,以下我详细的写一下:

首选需要Linux系统,我这里安装的是最新的Debian 8.0 Jessie,直接通过apt-get加软件库来安装

加入apt签名:

apt-key adv –keyserver keys.gnupg.net –recv-keys 1C4CBDCDCD2EFD2A

将以下内容添加到/etc/apt/sources.list,VERSION是版本代码,比如wheezy ,jessie等。

deb http://repo.percona.com/apt VERSION main deb-src http://repo.percona.com/apt VERSION main

更新一下: $ apt-get update

安装Percona Server、Client

$ apt-get install percona-server-server-5.6 percona-server-client-5.6

注意:Percona Server不能和MySQL Server同时共存,安装Percona前请先移除MySQL Serer。

安装完成后登录MySQL

mysql -uroot -ppassword

创建一个数据库

mysql> create database tunps_com;
mysql> use tunps_com;

将我丢失数据的WordPress数据库表结构SQL文件导到刚才建的tunps_com数据库wp_posts表。

这个时候数据库目录下会有一个wp_posts.ibd文件。

分离数据表的数据和结构:ALTER TABLE wp_posts DISCARD TABLESPACE;

此时我们会看到该数据表的ibd文件消失了。

把要恢复的ibd文件复制到新的数据表文件夹中,然后使用:ALTER TABLE wp_posts IMPORT TABLESPACE;来建立关系。 此时有可能会报错,报错内容为:

[SQL]ALTER TABLE wp_posts IMPORT TABLESPACE;
[Err] 1030 – Got error -1 from storage engine

此时需要查看mysql错误日志,发现:

InnoDB: how you can resolve the problem.
170728 11:10:23
InnoDB: Error: tablespace id and flags in file ‘.\tunps_com\wp_posts.ibd’ are 4 and 0, but in the InnoDB
InnoDB: data dictionary they are 3 and 0.

错误表示两个表的tablespace id不一致。旧数据表的tablespace id为4,但目前的数据表的tablespace id为3。那么接下来要做的是使tablespace id一致。

比较tablespace id,使得tablespace id一致

如果新的表的tablespace id 小于待恢复表的tablespace id,则可以通过创建表来增加tablespace id,最后在待恢复表的tablespace id处再创建一次members表,再分离表结构和表数据,把待恢复的ibd文件复制到新的表文件夹中,再把结构和数据建立关系,如果此时没报错,则关系已建立完成。
批量生成数据表可使用php脚本来完成:

如果新的表的tablespace id 大于待恢复表的tablespace id,则有两种方案,第一,重建一个mysql服务,则tablespace id就会从1开始,则必定小于待恢复表的tablespace id。第二,找到待恢复表的tablespace id所对应的那个表,然后把这个表改成与待恢复表的结构和表名。

备份数据

关系建立完成,但还是不能查询数据,此时需要更改mysql配置文件, 添加或修改:innodb_force_recovery=5,不行则1-6都尝试一遍。待数据可查询时,立即备份即可。

参考:
https://www.percona.com/blog/2013/11/05/how-to-recover-an-orphaned-ibd-file-with-mysql-5-6/

Typecho实现键盘左箭头右箭头按键切换到上一篇下一篇文章

github gist: https://gist.github.com/fr33m44/f2abc5a5204e0d14cdf915c56d5ffb10

if(document.getElementsByClassName('post-near')[0].childNodes[1].innerHTML != '上一篇: 没有了')
    var pre_link = document.getElementsByClassName('post-near')[0].childNodes[1].childNodes[1].href;
if(document.getElementsByClassName('post-near')[0].childNodes[3].innerHTML != '上一篇: 没有了')
    var next_link = document.getElementsByClassName('post-near')[0].childNodes[3].childNodes[1].href;
document.onkeydown=function(e){
    if(e.keyCode==37 && pre_link != undefined)
        window.location = pre_link;
    else if (e.keyCode ==39 && next_link != undefined)
        window.location = next_link;
};

jqka2手机使用史

2001 摩托罗拉 V998 , 500mAh 手机通话时间 120-180分钟 手机待机时间 40-100小时 上市日期 2000年03月
初中,看父辈们们用过,当时打电话8毛一分钟。
摩托罗拉 V998

2004 TCL 3188,锂电池,550mAh 通话时间180分钟;待机时间150小时初中,主打女性手机,红色镶钻。妈妈的第一部手机。(初中)

TCL 3188.jpg

2004 波导黑白屏直板, 年代久远,型号忘记了,网络上也无法搜索到机型图片,只能打电话、发短信、玩贪食蛇、铃声预制了几个,24和弦?主要用来和家长联系。(高一)

2005 三星SGH-E348, TFT 96×64像素 GSM900/1800 蓝牙 220小时待机 30万像素摄像头 支持MP3、AAC格式 姐姐送给我的,感觉用起来一般。没啥特别印象。(高中)

三星SGH-E348.jpg

2005 摩托罗拉V3ie,2.2英寸 80ppi 65536色TFT材质,分辨率为96×96像素 最高可支持512M移动内存卡
支持热插拔T-Flash卡 123万像素 首次进入彩屏时代,一代经典的“刀锋”超薄设计的折叠手机,分辨率为176×220像素,6万色TFT屏、72和弦。每次打电话大拇指翻盖是一种帅得掉渣的动作。(高中)

摩托罗拉V3ie.jpg

2006 NEC N830,240×320像素(QVGA)屏幕 运存28MB,130万像素 内置闪光灯 GPRS Class 8 支持3GPP和MPEG4视频 姐夫给我的手机,高三,那个时候迷上了wap上网,移动2G办理了无限流量卡,后来取消之后,我的sim卡上课被同学们接过来接过去。(高三)

NEC N830.png

2006 摩托罗拉MOTO L7,支持JAVA,可惜运行速度很慢,一直感觉L7用起来很卡。(大一)

摩托罗拉MOTO L7.png

2007 黑莓7230,65536色TFT彩色屏幕;240×160像素,2.8英寸 Intel XScale processor 2003上市 当时对智能手机很感兴趣,淘宝当时才兴起,花300块淘的二手洋垃圾,玩了几个月,300块卖掉。(大二)

黑莓7230.png

2007 诺基亚 N72 ¥2000 2.1英寸的26万色176×208 TFT, Symbian 8、S60v2 CPU 220MHz 200万像素摄像头 闪光灯 1200×1600像素分辨率的照片 支持352×288像素的有声视频拍摄 德州仪器TI OMAP1710,主频220HMz 64和弦铃声 运存20MB 使用时间 1年 弃用原因:丢失。滑动后盖直接打开照相机,当时的诺基亚的工业设计真的没谁了。第一次接触塞班系统,算是半智能机,可以安装sis软件。没有上N73是因为:穷。(大三)

诺基亚 N72.png

2008 索爱k510c,26万色TFT屏;128×160像素;1.8英寸 750mAh 40和弦 28MB Java MIDP 2.0 键盘中间的导航键真心好用。弃用原因:丢失。(大学毕业)

索爱k510c.png

2010.06.12 HTC Touch Diamond,2.8英寸 高通 MSM7200 528MHz WIFI 480×640像素 GPRS,EDGE,HSDPA
320万像素 CMOS 900mAh GPS 3G手机 电脑城购买,WM6.1 Touch FLO 3D 系统,电阻屏,触摸手感不能直视。弃用原因:垃圾电阻屏

HTC Touch Diamond.png

2011 诺基亚8600luna,1600万色彩屏 2.0英寸QVGA240 x 320 三姨淘汰下来的备用机,沉,价格贵,质感很不错,性价比渣渣。

诺基亚8600luna.png

2012.07.16 HTC One X,Android4.0 NVIDIA TEGRA3 四核 1GB RAM 4.7寸 7201280 super LCD 前置130W 后置800W
第一台安卓系统,Sense UI 1800mAH 。弃用原因:
进水*,自行淘宝换屏失败后丢弃。

HTC One X.jpg

2013 iPhone 4,妹妹换4S淘汰下来的手机。

iPhone 4.png

2014.04.02 小米2S,16GB,白色,可拆卸电池,易用性比OneX高了太多,喜欢上了MIUI。

小米2S.png

2015.03.27 魅蓝NOTE,没有经典安卓三键,用起来很捉急。flyme卡得一逼。用了5个月卖掉

魅蓝NOTE.png

2015.08.19 小米NOTE,白色64GB双网通,5.7寸大屏,单手操作还是不习惯。

小米NOTE.jpg

2016.09.01 一加3,发热,耗电快,硬件牛逼,系统ROM毫无优化可言,垃圾手机,用了2个星期闲鱼卖掉

一加3.png

2016.09.29 小米5 黑色高配,换回5寸屏幕。大小合适。有时候导航没信号,重启系统可解决。转给妈妈用,2个月后荷塘月色三轮车上丢失。

小米5.jpg

2017.06.18 iPhone6S 咸鱼买了二手64G粉色6s国行,2400,免费到apple售后换了电池(6s电池更换计划)目前任何问题使用至今。

2017.09.20 iPhone6S 因为给老妈的mi5丢失,咸鱼又买了一个6s,2150,64gb粉色国行。

2018.04.06 iPhone6S 老婆手机iPhone7 128GB国行被偷,咸鱼又买了一个黑色6s64gb港行,1618,我开始用这个黑色的,粉色的给老婆。

6s pink 64GB.jpg

雷凌贴膜(舒热佳)

以前看了知乎大大们的说法:“美国人都不贴膜,贴膜是国人的一种忽悠赚钱手段”。我就深深的坚信了这一点。所以3月末入手雷凌到11月都没有贴膜。家人也老是抱怨我买了车怎么不贴膜。搞得我挺尴尬。

后来渐渐觉得有贴膜的必要。因为我们这种低端车一般都是组装的白玻璃,隔热、隔紫外线的能力非常有限。所以还是老老实实的贴上。我很同意某些网友的观点:从安全角度考虑,要么不贴,要贴就贴好的。

在网上翻阅大量信息、什么龙膜威固强生雷朋,甚至国内的KDX。最终选中了量子膜(Quantum),它还有一个牌子叫舒热佳(SolarGard),不知道两者是什么关系,反正是同一家的。正好双11搞降价促销。在量子官方旗舰店看中了一款入门级别的车窗膜:前挡A70+侧后档A16。加起来用券后的价格是:¥1020,关键是免施工费,和线下店搞的O2O模式合作。

膜收到第二天驱车来到经纬大道车空间,店家给我指定的施工店看图片是有无尘贴膜车间的,看起来挺专业,而且在地图上分类还是一级服务门店。结果到了才知道无尘贴膜车间已经关门,只有在它的办公室里面贴。施工人员没有也没有穿工作服,贴膜过程中吸烟、讲笑话,还叫一个类似与学徒的年轻人来贴,完全把我买的东西当实验品。

贴了2个半小时后,终于结束。我检查了一圈没有气泡这些大问题。但是有些边角的地方不服帖,有翘起。后档车模裁剪的也不整齐。服务真的很糟糕。不过唯一宽心的是膜是正品。

目标计算机上的 Visual Studio 远程调试器无法重新连接到此计算机。身份验证失败。

此问题非常头疼,搞了一上午,需要注意以下问题:

首先请将访问安全策略从仅来宾改为经典(控制面板->管理工具->本地安全策略->本地策略->安全选项->网络访问:本地账号的共享与安全模型)。某些时候开启的防火墙会引起比较大的访问问题,建议关闭防火墙

确保本地和调试机器当前系统登录的账号和密码一样

安装Visual Studio 2010的远程调试器。在VS2010的安装ISO里面搜索rdbgsetup,里面有三个架构版本的安装包,x86、x64、和ia64。

rdbgsetup

安装是根据您调试的程序架构版本,而不是操作系统架构版本。比如在x64的Win10调试Any CPU的.NET程序,那么需要安装x86的。如果安装运行了错误架构开启调试的时候VS会提示:

Visual Studio 远程调试监视器(MSVSMON.EXE)的 64 位版本不能用于调试 32 位进程或 32 位转储。请改用 32位版本。

解决Windows 10微软拼音自动转成繁体中文输入法

Windows 10系统最近上手两个月,谈不上出色,但也不难用。最近使用过程中频繁出现刚才还在输入简体中文,过一会儿就变为繁体中文输入了。我猜想是碰到了输入法切换的快捷键。网上一搜,果然,Windows 10微软拼音默认简体繁体中文切换的快捷键是:Ctrl + Shift + F。这个正好也是Notepad++的高级搜索的快捷键。我也最近纳闷怎么Notepad++的高级搜索无法使用,也没有细想。原来是两者之间的快捷键冲突。

此问题在微软问答社区已经有人提出:windows 10 版本14372,微软拼音输入法简体繁体切换快捷键问题 还有这个:安裝Win10周年更新后,Ctrl+Shift+F 快捷鍵被中文輸入法占用。提问者的Windows 10版本是14372,我用的最新的版本 10.0.14393均有此问题。很多开发软件(比如:Eclipse、微软自家Visual Studio的Find in files功能、Adobe Reader、Sublime、Qt Creator等太多太多…)用Ctrl + Shift + F来作为高级搜索的快捷键。目前这个热键无法更换也无法禁用,2016年8月的八阿哥目前也没有修复。希望后期Windows 10更新能解决此问题。

解决办法:换QQ输入法或者搜狗输入法。囧。

.NET编译错误:未能找到程序集“*”。请检查磁盘上是否存在该程序集。 如果您的代码需要此引用,则可能出现编译错误。

C:\Windows\Microsoft.NET\Framework\v4.0.30319\Microsoft.Common.targets(1605,5): warning MSB3245: 未能解析此引用。未能找到程序集“System.Windows.Forms.TreeListView, Version=1.0.3945.28878, Culture=neutral, processorArchitecture=MSIL”。请检查磁盘上是否存在该程序集。 如果您的代码需要此引用,则可能出现编译错误。
用于 SearchPath“D:\tunps.com\FakesAssemblies”。
已考虑使用“D:\tunps.com\FakesAssemblies\System.Windows.Forms.TreeListView.winmd”,但它不存在。
已考虑使用“D:\tunps.com\FakesAssemblies\System.Windows.Forms.TreeListView.dll”,但它不存在。
已考虑使用“D:\tunps.com\FakesAssemblies\System.Windows.Forms.TreeListView.exe”,但它不存在。
用于 SearchPath“{TargetFrameworkDirectory}”。
已考虑使用“C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Windows.Forms.TreeListView.winmd”,但它不存在。
已考虑使用“C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Windows.Forms.TreeListView.dll”,但它不存在。
已考虑使用“C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETFramework\v4.0\System.Windows.Forms.TreeListView.exe”,但它不存在。
用于 SearchPath“{Registry:Software\Microsoft\.NETFramework,v4.0,AssemblyFoldersEx}”。
已考虑 AssemblyFoldersEx 位置。
用于 SearchPath“{AssemblyFolders}”。
已考虑使用“C:\Program Files (x86)\Microsoft SQL Server\100\SDK\Assemblies\System.Windows.Forms.TreeListView.winmd”,但它不存在。
已考虑使用“C:\Program Files (x86)\Microsoft SQL Server\100\SDK\Assemblies\System.Windows.Forms.TreeListView.dll”,但它不存在。
已考虑使用“C:\Program Files (x86)\Microsoft SQL Server\100\SDK\Assemblies\System.Windows.Forms.TreeListView.exe”,但它不存在。
已考虑使用“c:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.0\System.Windows.Forms.TreeListView.winmd”,但它不存在。
已考虑使用“c:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.0\System.Windows.Forms.TreeListView.dll”,但它不存在。
已考虑使用“c:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\v3.0\System.Windows.Forms.TreeListView.exe”,但它不存在。
用于 SearchPath“{GAC}”。
已考虑使用“System.Windows.Forms.TreeListView, Version=1.0.3945.28878, Culture=neutral, processorArchitecture=MSIL”,但未在 GAC 中找到它。
用于 SearchPath“{RawFileName}”。
已考虑将“System.Windows.Forms.TreeListView, Version=1.0.3945.28878, Culture=neutral, processorArchitecture=MSIL”视为文件名,但它不存在。
用于 SearchPath“bin\Debug\”。
已考虑使用“bin\Debug\System.Windows.Forms.TreeListView.winmd”,但它不存在。
已考虑使用“bin\Debug\System.Windows.Forms.TreeListView.dll”,但它不存在。
已考虑使用“bin\Debug\System.Windows.Forms.TreeListView.exe”,但它不存在。
AssemblyFoldersEx 位置:“{Registry:Software\Microsoft\.NETFramework,v4.0,AssemblyFoldersEx}”
C:\Program Files (x86)\Microsoft WCF Data Services\5.0\bin\.NETFramework\
C:\Program Files (x86)\Common Files\microsoft shared\VSTT\10.0\UITestExtensionPackages
C:\Program Files\Reference Assemblies\Microsoft\VSTO40\v4.0.Framework\
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Visual Studio Tools for Office\PIA\Office14\
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Visual Studio Tools for Office\PIA\Common\
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\SharePoint\PublicAssemblies\
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\ReferenceAssemblies\v4.0\
c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ReferenceAssemblies\v4.0\
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\x64\2052\
c:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Win32\2052\
C:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\Platforms\Itanium\2052\
c:\Program Files (x86)\MSBuild\Microsoft.Cpp\v4.0\2052\
C:\Program Files (x86)\Reference Assemblies\Microsoft\VBPowerPacks\v10.0\
C:\Program Files (x86)\Microsoft SDKs\RIA Services\v1.0\Libraries\Server\
c:\Program Files (x86)\Microsoft Visual Studio 10.0\ReportViewer\
c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\PublicAssemblies\
c:\Program Files (x86)\Microsoft.NET\Primary Interop Assemblies\
C:\Program Files (x86)\Reference Assemblies\Microsoft\FSharp\3.0\Runtime\v4.0\Type Providers\
C:\Program Files (x86)\Reference Assemblies\Microsoft\FSharp\3.0\Runtime\v4.0\
c:\Program Files (x86)\Microsoft Visual Studio 10.0\VSTSDB\
C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v2.0\Assemblies\
C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies\
C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 4\Assemblies\
C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET MVC 3\Assemblies\
C:\Program Files (x86)\Microsoft Visual Studio 11.0\ReportViewer\
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\Extensions\Microsoft\SharePoint\PublicAssemblies\
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE\ReferenceAssemblies\v2.0\
c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ReferenceAssemblies\v2.0\
C:\Program Files (x86)\Reference Assemblies\Microsoft\VBPowerPacks\v10.0\
c:\Program Files (x86)\Microsoft Visual Studio 10.0\Common7\IDE\ReferenceAssemblies\v2.0\
C:\Program Files (x86)\Microsoft SDKs\Microsoft Sync Framework\v1.0\Runtime\ADO.NET\V2.0\x64\
c:\Program Files (x86)\Microsoft Visual Studio 10.0\ReportViewer\
c:\Program Files (x86)\Common Files\Microsoft Shared\MSEnv\PublicAssemblies\
C:\Program Files (x86)\Microsoft Chart Controls\Assemblies
C:\Program Files (x86)\Microsoft SDKs\Microsoft Sync Framework\v1.0\Runtime\x86\
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Blend\
C:\Program Files (x86)\Microsoft Visual Studio 11.0\Blend\
生成失败。
已用时间 00:00:00.26
========== 全部重新生成: 成功 0 个,失败 1 个,跳过 0 个 ==========

在编译.NET工程后报错:未能解析此引用。,.NET编译器会在所有搜索路径(SearchPath)搜索忘了发现没有需要的应用库的时候报这个错误。如果您编译的是Debug版本的程序,将应用库放到工程目录D:\tunps.com\bin\Debug下即可解决此问题。