解决centos安装mysql依赖出错问题提示保护多库版本

当执行以下命令安装依赖时候:yum -y install libaio.so.1 libgcc_s.so.1 libstdc++.so.6时候出现了如下错误:Loaded plugins: fastestmirror, refresh-packagekit, securityLoading mirror speeds from cached hostfile * base: centos.ustc.edu.cn * extras: centos.ustc.edu.cn * updates: mirrors.cn99.comSetting up Install ProcessResolving Dependencies--> Running transaction check---> Package libaio.i686 0:0.3.107-10.el6 will be installed---> Package libgcc.i686 0:4.4.7-23.el6 will be installed---> Package libstdc++.i686 0:4.4.7-23.el6 will be installed--> Finished Dependency ResolutionError:  Multilib version problems found. This often means that the root       cause is something else and multilib version checking is just       pointing out that there is a problem. Eg.:                1. You have an upgrade for libgcc which is missing some            dependency that another package requires. Yum is trying to            solve this by installing an older version of libgcc of the            different architecture. If you exclude the bad architecture            yum will tell you what the root cause is (which package            requires what). You can try redoing the upgrade with            --exclude libgcc.otherarch ... this should give you an error            message showing the root cause of the problem.                2. You have multiple architectures of libgcc installed, but            yum can only see an upgrade for one of those arcitectures.            If you don't want/need both architectures anymore then you            can remove the one with the missing update and everything            will work.                3. You have duplicate versions of libgcc installed already.            You can use "yum check" to get yum show these errors.              ...you can also use --setopt=protected_multilib=false to remove       this checking, however this is almost never the correct thing to       do as something else is very likely to go wrong (often causing       much more problems).              Protected multilib versions: libgcc-4.4.7-23.el6.i686 != libgcc-4.4.7-4.el6.x86_64 You could try using --skip-broken to work around the problem** Found 6 pre-existing rpmdb problem(s), 'yum check' output follows:1:libreoffice-core-4.0.4.2-9.el6.x86_64 has missing requires of libjawt.so()(64bit)1:libreoffice-core-4.0.4.2-9.el6.x86_64 has missing requires of libjawt.so(SUNWprivate_1.1)(64bit)1:libreoffice-ure-4.0.4.2-9.el6.x86_64 has missing requires of jre >= ('0', '1.5.0', None)2:postfix-2.6.6-2.2.el6_1.x86_64 has missing requires of libmysqlclient.so.16()(64bit)2:postfix-2.6.6-2.2.el6_1.x86_64 has missing requires of libmysqlclient.so.16(libmysqlclient_16)(64bit)2:postfix-2.6.6-2.2.el6_1.x86_64 has missing requires of mysql-libs解决方法也很简单,用下列代码执行安装即可:yum install --setopt=protected_multilib=false libaio.so.1 libgcc_s.so.1 libstdc++.so.6

windows系统下解决redis服务器软件闪退问题

我下载的是免安装版的window版redis,解压后如下:刚解压开直接双击redis-server.exe启动redis或者在命令提示符中找到路径启动,但当第二次使用的时候,发现双击redis-server闪退,在命令提示符启动也报错(该错误其实由于电脑内存不足影响的),我百度了好多解决方式,但是都没用,最后终于找到一个适合自己电脑上redis的解决方式,仅供参考,如下:第一步:在解压的redis文件夹下新建一个start.bat(window启动一般都是xx.bat)第二步:打开redis.windows.conf文件,限制内存            大约300多行的位置加一句maxheap 1024000000 即可    # maxheap <bytes>    maxheap 1024000000第三步:在新建的start.bat文件中加入下面一句话(因为启动redis需要用到这两个文件)redis-server.exe  redis.windows.conf以上三个步骤完成之后,保存,双击start.bat即可启动

windows系统下解决redis服务器软件闪退问题

Java Web将多个servlet封装在一个class类中

建个基础servlet类继承HttpServlet,其中除了可以反射方法外也可以写些常用的方法 :public class BaseServlet extends HttpServlet { @Override protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { //重写service方法 完成方法分发 /*获取请求路径 * 获取方法名称 * 获取方法对象 * 执行反射*/ String requestURI = req.getRequestURI(); //获取uri String methodName = requestURI.substring(requestURI.indexOf("/") + 1); //substring获取方法名 try { Method method = this.getClass().getMethod(methodName, HttpServletRequest.class, HttpServletResponse.class); method.invoke(this,req,resp); //此处的this指入口的class,非此class } catch (NoSuchMethodException e) { e.printStackTrace(); } catch (IllegalAccessException e) { e.printStackTrace(); } catch (InvocationTargetException e) { e.printStackTrace(); } } /** * 直接将传入对象序列化为json * 并传给浏览器 * @param obj * @param response * @throws IOException */ public void writeValue(Object obj,HttpServletResponse response) throws IOException { ObjectMapper mapper = new ObjectMapper(); response.setContentType("application/json;charset=utf-8"); //设置编码 注意两个设置字段中间用分号隔开 mapper.writeValue(response.getOutputStream(),obj); } public String writeValueAsString(Object obj) throws JsonProcessingException { ObjectMapper mapper = new ObjectMapper(); return mapper.writeValueAsString(obj); //将传入对象序列化为json并返回字符 }} 相关servlet均继承baseservlet@WebServlet("/user/*")public class UserServlet extends BaseServlet { /*原本新建的get post方法改成你需要的方法 protected修饰改成public 否则需要在baseServlet中暴力反射 不建议使用暴力反射 申明UserService业务对象 方便使用 声明业务或dao对象一般先建接口 然后再实现*/ UserService service = new UserServiceImpl(); //访问 域名/user/regist即可以访问下列方法 public void regist(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { } public void login(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { }}

表单校验JQuery与正则的使用

简单讲解下正则的使用:单个字符:[]如: a [a-zA-Z0-9_]特殊符号代表特殊含义的单个字符:\d:单个数字字符 [0-9]\w:单个单词字符[a-zA-Z0-9_]量词符号:?:表示出现0次或1次*:表示出现0次或多次+:出现1次或多次{m,n}:表示 m<= 数量 <= n* m如果缺省: {,n}:最多n次* n如果缺省:{m,} 最少m次开始结束符号^:开始$:结束创建var reg = new RegExp("正则表达式");var reg = /正则表达式/;方法. test(参数):验证指定的字符串是否符合正则定义的规范,简单示例:var a="12345";var reg=/^\w{6,12}$/;   //正则 表示字符数6-12var b=reg.test(a); //此处a值不符合返回falsealert(b);下面以注册表单校验为例:<!--导入jquery--><script src="js/jquery-3.3.1.js"></script><script>    /*思路:    * 为每个单元格建立校验    * 在输入框离开焦点跟提交时候启用校验*/    function checkUsername() { //校验用户名        /*获取用户名值        * 定义正则        * 判断是否为true*/        var username = $("#username").val();        var reg_username = /^\w{3,10}$/; //用户名为3-10位字符串        var flag = reg_username.test(username);        if (flag) {            console.log("用户名合法") //浏览器控制台显示日志内容 实际不用写            $("#username").css("border", "");        } else {            console.log("用户名不合法")            $("#username").css("border", "1px solid red");        }        return flag;    }    function checkPassword() {        var password = $("#password").val();        var reg_password = /^\w{6,16}$/; //密码为6-10位字符串        var flag = reg_password.test(password);        if (flag) {            console.log("密码合法")            $("#password").css("border", "");        } else {            console.log("密码不合法")            $("#password").css("border", "1px solid red");        }        return flag;    }    function checkEmail() {        var email = $("#email").val();        var reg_email = /^\w+\@\w+\.\w+$/; //符合特定格式的字符串 带@跟.        var flag = reg_email.test(email);        if (flag) {            console.log("邮箱合法")            $("#email").css("border", "");        } else {            console.log("邮箱不合法")            $("#email").css("border", "1px solid red");        }        return flag;    }    function checkName() {        var name = $("#name").val();        var reg_name = /^\w{3,10}$/;        var flag = reg_name.test(name);        if (flag) {            console.log("姓名合法")            $("#name").css("border", "");        } else {            console.log("姓名不合法")            $("#name").css("border", "1px solid red");        }        return flag;    }    function checkTelephone() {        var telephone = $("#telephone").val();        var reg_telephone = /^\1\d{10}$/; //首位为1后面十位为数字        var flag = reg_telephone.test(telephone);        if (flag) {            console.log("手机合法")            $("#telephone").css("border", "");        } else {            console.log("手机不合法")            $("#telephone").css("border", "1px solid red");        }        return flag;    }    function checkCheck() {        var check = $("#check").val();        var reg_check = /^\w{4}$/; //已知验证码为四位字符        var flag = reg_check.test(check);        if (flag) {            console.log("验证码合法")            $("#check").css("border", "");        } else {            console.log("验证码不合法")            $("#check").css("border", "1px solid red");        }        return flag;    }    $(function () {        /*当表单提交时调用校验方法*/        $("#registerForm").submit(function () {            if (checkName() && checkPassword() && checkName() && checkEmail() && checkTelephone() && checkCheck()) {                $.post("user/regist", $(this).serialize(), function (data) { //serialize()序列化表单内容                    if (data.flag) { //从服务器获取注册结果                        console.log("注册成功")                        location.href = "regist_ok.html"; //注册成功跳转页面                    } else {                        console.log("注册失败")                        $("#errorMsg").html(data.errorMsg); //注册失败显示错误信息                    }                })            }        });        $("#username").blur(checkUsername); //鼠标离开输入框执行事件        $("#password").blur(checkPassword); //注意方法名后不要加(),否则失焦事件将无异议        $("#email").blur(checkEmail);        $("#name").blur(checkName);        $("#telephone").blur(checkTelephone);        $("#check").blur(checkCheck);    })</script>

MySQL创建表时,设置自动插入当前时间字段的两种格式

1.timestamp类型create table manager(id int not null primary key,mdate timestamp not null default current_timestamp);2.datetime类型create table manager(id int not null primary key,mdate datetime);

JQuery中的mouseleave跟mouseout事件区别

使用IDEA写JQ事件时候发现有两种事件都是鼠标离开时触发的,它们分别是mouseleave跟mouseout为此我也上网百度了下得到两点区别:不论鼠标指针离开被选元素还是任何子元素,都会触发 mouseout 事件。只有在鼠标指针离开被选元素时,才会触发 mouseleave 事件。也就是说假如一个div1内部又有个div2,你在div1中绑定了mouseout,当你鼠标离开div2时候也会触发事件,而leave不会,因此大家在使用时候建议根据具体情况使用

JQuery中的mouseleave跟mouseout事件区别

腾讯云被用户索赔 原来云服务器也一定万无一失!

原标题:腾讯云被用户索赔 网友:赔13万太少了吧?腾讯云为什么被用户索赔自媒体前沿数控技术通过网媒指,因腾讯云硬盘故障导致其数据完全丢失,自上月20日夜晚8时起,平台已全部停运,活跃用户在网站停运的情况下逐渐流失,平台信任度将降至冰点,后续再恢复活跃度面临几何级的极大挑战,广告商亦要求退款赔偿,公司融资计划也被中止,称公司进入生存危机。腾讯云早前曾提出13.6万元人民币“赔偿+补偿”方案,但遭前沿数控拒绝,前沿数控向腾讯云索赔1101.6万元人民币。腾讯云回应称,该硬盘静默错误是在极小概率下被触发。腾讯云随即对固件版本有bug的硬盘全部进行下线处理,确保相关隐患全部排除。腾讯云称希望可以尽快帮助用户恢复业务,将损失降低最低,因此提出了“赔偿+补偿”解决方案,但目前双方未达成共识。8月6日午间消息,针对用户“前沿数控”数据丢失一事,腾讯云官方给出回应,并对补偿措施进行说明。日前,“前沿数控技术新媒体”发文,称放在腾讯云服务器上的数据全部丢失,质疑腾讯云的安全性。前沿数控是一家从微信公众号起家的创业公司,2014年注册了微信公众号“前沿数控技术”,定位于数控、模具、机械行业,后转型为一站式平台,开发了网站、H5、小程序产品等。为应对流量迅速增加以及安全可靠的需求,前沿数控选择使用腾讯云服务器。而在2018年7月20日,平台数据全部丢失。前沿数控表示,这些数据价值近千万元。腾讯云今日回应称,前沿数控所遇情况是因受所在物理硬盘固件版本bug导致的静默错误(写入数据和读取出来的不一致)影响,文件系统元数据损坏。腾讯云表示,经过分析,该硬盘静默错误是在极小概率下被触发。我们随即对固件版本有bug的硬盘全部进行下线处理,确保相关隐患全部排除。随后,腾讯云向“前沿数控”接口人说明情况,表达歉意,并制定“赔偿+补偿”方案。腾讯云认为“前沿数控”在平台上产生的实际消耗共计3569元,将按照赔偿条款中的上限以现金形式全额返还这笔费用;同时,腾讯云承诺为“前沿数控”提供13.29万元现金或云资源的额外补偿。不过,前沿数控基于自身评估就此次故障提出的赔偿要求为1101.6万元,双方未达成一致。腾讯云最后提到,后续将针对云盘产品会额外实行定期强灾备措施,进一步保障用户数据的可靠性。以下为腾讯云回应全文:近日,腾讯云用户北京清博数控科技有限公司所属“前沿数控”平台一块操作系统云盘,因受所在物理硬盘固件版本bug导致的静默错误(写入数据和读取出来的不一致)影响,文件系统元数据损坏。腾讯云监控到异常后,第一时间向用户告知故障状态,并立即组织文件系统专家并联合厂商技术专家尝试修复数据。遗憾的是,虽经多方努力,最终仍有部分数据完整性校验失败。经过分析,该硬盘静默错误是在极小概率下被触发。我们随即对固件版本有bug的硬盘全部进行下线处理,确保相关隐患全部排除。随后,腾讯云向“前沿数控”接口人伍先生说明情况并表达歉意,同时安排专人积极与接口人沟通,也在第一时间制定如下“赔偿+补偿”方案,以期将用户损失降最低。赔偿部分:“前沿数控”在平台上(自2017年12月份开户至今)产生的实际消耗共计3569元,依据腾讯云相关服务协议、规则和行业惯例,腾讯云将按照赔偿条款中的上限以现金形式全额返还这笔费用;补偿部分:本着帮助用户迅速恢复业务的目的,腾讯云承诺为“前沿数控”提供132900元现金或云资源的额外补偿。无论如何,我们都希望可以尽快帮助用户恢复业务,将损失降低最低,因此提出了“赔偿+补偿”总金额达到136469元的解决方案,这其实也是其在腾讯云平台中用云金额的37倍。不过,“前沿数控”基于自身评估就此次故障对腾讯云提出了高达11016000元的索赔要求。毫无疑问,这远远高于我们能够提供的方案。这也是此次双方目前未能达成一致的主要原因之一。从平台角度,腾讯云极力提供持久、稳定、安全的服务。但基于云计算特性,为了杜绝概率极低的意外事故发生,我们在做好云平台数据备份保障外,也按照行业惯例在相关协议中提醒用户对自身重要数据,尤其是客户信息、程序代码、网页素材等进行数据本地备份。遗憾的是,在这次故障中,“前沿数控”也表示目前没有任何本地备份数据可以用来恢复业务。在双方的沟通中,“前沿数控”还提出希望以“获得腾讯投资”、“腾讯官方引流”等方式得到补偿。在当前情况下,我们的确很难满足这样的要求。作为腾讯的战略性业务,云计算凝结着我们开放技术能力的初心,也寄托着我们连接智能未来的愿景。腾讯云极度珍视自身品牌,重视用户的合理诉求,并寻求帮助用户尤其是中小规模的用户获得成长。我们将继续与用户“前沿数控”保持建设性沟通,为最终帮助其进行业务恢复进行有诚意的努力。当然,如果最终用户倾向于寻求以法律诉讼方式解决争议,我们也将积极配合用户在法律框架下得到公平公正的解决方案。同时,我们也将适时与媒体沟通进一步进展。最后,我们对此次故障给用户业务带来影响再次表示最诚恳的歉意。后续,我们针对云盘产品会额外实行定期强灾备措施,进一步保障用户数据的可靠性。让每一个用户放心上云,安心用云。腾讯云2018年8月6日

腾讯云被用户索赔 原来云服务器也一定万无一失!

华为回应退出美国:不实,在美根本没有业务

原标题:华为回应“撤出美国市场”的官方回复来了:消息不属实【观察者网 综合报道】继今年4月,外界传闻“华为即将退出美国市场”后,本月6日,又有消息称“华为决定裁撤全部据点,撤出美国市场”。华为随后否定,称此音讯并不事实。这一回应是继本年4月华为称“全部以官方音讯为准”后的最新官方表态。刚成为全球第二大智能手机厂商  就要撤出全数在美组织?韩媒ETNews 6日报导,一位熟悉华为方案的移动运营商官员周一泄漏,因为美国政府与议会连手封杀华为,逼迫本地企业中止与华为间的交易,华为方案撤出在美国的三个办事处。“我知道华为美国办事处撤离的准备工作是在三到四个月前完结的。咱们现在知道美国的移动事务简直被暂停,”该人士说。报导还称,华为在硅谷设有个千余人的研制中心,目前还未有音讯显现未来将如何处置。值得注意的是,日前,市场研究机构IDC统计,2018年第二季度,华为智能手机出货量超越苹果,成为仅次三星的全球第二大智能手机厂商;而且2017年,华为全球网通产品的出货量也首次超越竞争对手爱立信与诺基亚,登上龙头。在智能手机及全球网络通讯设备都有斩获的情况下,华为的决定相当罕见。华为否认撤出市场对于是否“撤出美国市场”,媒体纷纷向华为求证。36氪报道,华为称此消息“不属实”。财联社也表示,华为海外相关负责人回应称,华为在美国市场压根就没有业务,谈不上退出美国市场。目前华为仅在美国偏远区域有据点,且仅有少数科研人员。事实上,这并非华为近年来首次回应是否撤出美国市场。早在5年前,华为就曾“放弃”美国市场,但并未完全退出。2013年4月,时任华为执行副总裁徐直军在年度分析师峰会上表示:“我们对美国市场已经没有兴趣了。”而时任华为CTO的李三琦也说:“我们其实很希望进军美国市场,但得面对现实。在美之外的其他地区市场也足够大,而且增长迅猛,我们需要集中精力发展。”据芯智讯报道,当时华为虽然仍在美国拥有1400名员工,但研发人员总数已经从800降至500,销售团队也已经压缩。华为消费者和企业部门的高管表示,公司已经不再将美国视为一个战略性市场。今年4月,外媒报道,华为解雇了5名美国雇员,释放出了要转变在美政策的信号。《纽约时报》文章称,美国市场将不再出现在华为的未来规划中,华为将结束十年来在美国付出的毫无疑义的努力,收回在美国市场的布局。在随后的举行的2018华为分析师大会上,华为轮值首席执行官徐直军表示:“中美关系不是我在这里说得清楚的,或者可以推动解决的。”徐直军称,有些事情不以华为的意志为转移,既然没法左右,还不如不去理它,“作为华为来讲,我们聚焦在把自己的事情做好,不管遇到什么困难,聚焦把自己的事情做好,才能更好的生存和发展。”有研究机构将这番话解读为美国已不再是华为全球战略的一部分,预计今年年底就会彻底退出美国市场,引发外界密切关注。针对上述说法,华为方面回应界面新闻称,“关于美国市场的发展情况一切以官方消息为主”。华为美国市场一再被蚕食外界注意到,华为早在6年前就开始“离开”美国市场。2012年美国国会的一份报告声称华为的设备对美构成国家安全威胁,自那时以来华为实际上已被禁止在美销售电信设备。今年年初,华为计划重返美国智能手机市场,砸重金与美国运营商AT&T合作,但最终因为美国政府的阻挠而告吹。随后美国百思买停止与华为合作,停售华为手机。这意味着华为手机丧失了硕果仅存的一个美国线下销售渠道。随后,华为宣布将通过第三方零售商、电商网站以及自家渠道来销售手机,并使用降价“促销”。4月,美国联邦通讯委员会(FCC)以5比0投票通过,禁止使用联邦资金从被认定对美国国家安全构成威胁的公司手中购买网络设备。这项新规进一步限制华为公司的美国业务,使得小型、农村地区运营商更加难以购买华为的电信设备。华为目前在美国拥有数千家客户,包括区域性运营商、中小企业等等。这些客户虽然可以用爱立信、思科或是其他厂商的产品替代华为的设备,但仍需要技术支持。而一直要求恢复对中兴制裁的美国共和党参议员、“反华急先锋”卢比奥在6月要求调查华为和和美国数十所高校的研究合作项目,质疑华为与美国大学的基础科研合作项目是否会对美国国家安全构成威胁。真退出?业界:好选择对于华为的辟谣,科技媒体芯智讯援引业内人士的分析,指出在贸易战愈演愈烈的背景之下,华为在美国的开展越来越困难,暂时放弃美国市场并非不可能。官方否认,或许这只是华为不想公开承认而已。业内再次传出华为即将退出美国市场的消息,恐怕这也并不是空穴来风。36氪刊文称,华为在美国经常被贴上“安全威胁”的标签,业务拓展步履维艰。如果华为彻底退出美国市场,也并没有损失太多。华为眼下在美国很难争取很大的市场空间,此举更像战略性放弃了一个鸡肋市场。除了业务拓展不顺,美国市场对华为的营收贡献也不大。对华为而言,美国市场从来不是一块稳稳地吃到嘴里的蛋糕,还时不时遭遇调查和抵制。暂时撤出美国市场,等待日后更好的时机出现,未尝不是一个好的选择。

华为回应退出美国:不实,在美根本没有业务