陈楚生
基本信息 陈楚生,1981年7月25日出生于海南省三亚市,祖籍广东省普宁市,中国内地流行男歌手,原创音乐人,全国青联委员,海南省青联常委,奥运火炬手。 2001年参加了上海东方电视台等18家电视台联合举办“亚洲新人大奖赛”,获得了“亚洲最具潜质新人奖”,20岁的陈楚生进入了选秀视野。2003年获得在长沙举行的全国PUB歌手大赛冠军,签约唱片公司EMI(百代唱片)。2005年与百代唱片解约,组建蓝雨乐队但只坚持了一年左右。2006年组建BIG BOY乐队。2007年7月参加湖南卫视“快乐男声”并获得全国总冠军出道并签约天娱传媒,发行首支单曲《有没有人告诉你》被观众所熟知,11月发行个人首张EP《原来我一直都不孤单》[1] 。 2009年8月与经纪公司天娱传媒解约,10月28日签约华谊兄弟,12月在北京工人体育馆举办首场个人演唱会[2] 。2012年8月出演首部微电影《经过》(歌曲MV剧情版),2011年8月14日以中国音乐人代表的身份应邀参加夏季音乐节"日本Summer sonic音乐节",成为首位献唱的中国歌手。2013年6月10日发行个人第三张原创专辑《我知道你离我不远》。2014年9月17日,据媒体报道,陈楚生妻子已诞下一名男婴[3] ,取名Demo[4] 。2014年11月至2015年1月举办“一见如故”全国巡回演唱会(共16站)。 早年经历 1995年,陈楚生开始爱上吉他,1997年7月25日,他得到了第一把属于自己的吉他,1999年,曾去自家附近的一间小酒吧弹唱。 2000年,19岁的陈楚生高中没念完便离开老家海南的校园,去深圳开始音乐寻梦之旅;7月,开始去深圳一家酒吧弹唱;8月,参加了深圳傲旗音乐制作公司同酒吧联合举办的深圳本土原创音乐节;9月,在深圳广播电台夏冰主持的《我唱我歌》栏目做现场采访及现场弹唱,并且连续一周播放自己创作的歌曲。 2001年,参加了上海东方电视台等18家电视台联合举办“亚洲新人大奖赛”,经过各大赛区1000多名歌手激战,20岁的陈楚生进入了选秀视野。决赛获得了“亚洲最具潜质新人奖”。 2002年1月,参加深圳电视台拍摄的一部贵州扶贫爱心活动的短片,演唱这部片子的主题曲《大山的孩子》。 演艺经历 2003年,获得在长沙举行的全国PUB歌手大赛冠军,签约唱片公司EMI(百代唱片)。 2005年,与百代唱片和平解约,组建蓝雨乐队但只坚持了一年左右。2005年至2006年在深圳做酒吧跑场歌手,6月BIG BOY乐队成立。 2007年4月,在深圳本色酒吧big boy乐队主唱;7月,参加了快乐男声并获得冠军签约天娱传媒,发行首支单曲《有没有人告诉你》;11月8日,发行个人EP《原来我一直都不孤单》。 2009年8月23日,与天娱成功解约;9月18日,携手国际品牌NOKIA发布《奇幻之旅》, 随之在华谊兄弟影业出品的国庆献礼片《风声》演唱主题曲《且听风吟》《明天》;10月17日,在南昌参加第27届中国电影金鸡奖颁奖典礼,并演唱歌曲《边疆泉水清又清》《遇见》;10月28日,陈楚生签约华谊兄弟。 2010年2月4日,担任陈坤北京首场个唱表演嘉宾[5] ;4月30日,担任许巍成都演唱会表演嘉宾[6] ;5月5日,于北京大学百年讲堂参加电影《80’后》首映礼并演唱其主题曲《天长地久》;5月14日,担任许巍西安演唱会表演嘉宾[7] ;6月12日,于朝阳大悦城北京发布EP《绿动》;6月21日,出席CCTV6电影《80’后》首映礼,为电影献唱主题曲《天长地久》;6月27日,助阵CCTV-5“豪门盛宴”,演唱歌曲《绿动》;7月9日,于上海东方卫视现场演唱电影《世博总动员》主题曲《男孩的梦》;8月28日,担任孙燕姿北京演唱会表演嘉宾,与孙燕姿合唱经典曲目《开始懂了》,吉他弹唱《某某》《有没有人告诉你》;9月12日,参加电影《山楂树之恋》首映,并演唱宣传曲《山楂花》;9月26日,出席CCTV-6电影《狄仁杰之通天帝国》首映礼,并演唱主题曲《丹书铁契》和宣传曲《相忘于江湖》;10月16日,参加第19届金鸡百花电影节颁奖典礼,并演唱《风声》主题曲《且听风吟》;12月16日,出席电影《非诚勿扰2》首映礼,与影片女二号安以轩献唱宣传曲《爱过》;12月21日,携全新影视专辑《影之传说》在北京华谊兄弟影院举行发布会[8] 。 2011年3月17日,出席电影《守望者:罪恶迷途》首映礼,演唱主题曲《浮光》;3月24日,出席电影《奋斗》首映礼;5月20日,于南京龙江体育馆参加全国青奥知识大奖赛启动仪式创作并献唱主题曲《人生的冠军》;8月14日,以中国音乐人代表的身份应邀参加夏季音乐节"日本Summer sonic音乐节",成为首位献唱的中国歌手,演唱其原创《奇幻之旅》[9] ;11月6日,在北京悠唐广场举行陈楚生加盟华谊兄弟后第二张原创专辑《瘾》发布会;12月27日,在北京举办了一场新年围炉音乐会,这场音乐会同时也是原创专辑《瘾》的全国不插电首唱会。[10] 2012年1月,楚生接连参加BTV网络春晚、CCTV网络春晚、BTV环球春晚,并分别献唱新专辑中《思念一个荒废的名字》;2月,与何洁演唱电视剧《夫妻那些事》片尾曲《经过》;8月,首部《蜕变》个人系列微电影,片中陈楚生扮演一位内心丰富的心理医生,该片分为四集分别有悬疑、恐怖、励志、搞笑四大特点;12月31日,参加央视元旦晚会,陈楚生演唱原创代表作《有没有人告诉你》。[11] 2013年1月1日,湖北卫视跨年晚会演唱演绎《有没有人告诉你》《追风筝的孩子》;1月26日,北京万事达中心(五棵松体育馆)在纪念邓丽君诞辰60周年演唱会上献唱献唱《在水一方》《独上西楼》;[12] 4月-6月,参加江苏卫视综艺节目《星跳水立方》获得总决赛季军;[13] 6月10日,发行个人第三张原创专辑《我知道你离我不远》;[14] 10月25日,在广东湛江举行红牛不插电演唱会;[15] 11月30日,出席2013年度音乐先锋榜颁奖典礼,凭借专辑《我知道你离我不远》荣获内地最佳先锋男歌手、内地最佳专辑和年度十大先锋金曲奖三项重要大奖;[16] 12月17日,与陈明、钟伟强、李祥祥、央吉玛合作的贺岁新单曲《最牛幸福年》发行;[17] 12月18日,出席第11届华鼎奖音乐颁奖盛典,凭借专辑《我知道你离我不远》荣获最佳原创歌手奖。[18] 2013年12月-2014年3月,参加深圳卫视音乐节目《金钟奖·中国音超》担任华谊兄弟联队队长,带领华谊兄弟联队挺进总决赛,并获得团体第二名,个人也获得男子组银奖。[19] 2014年1月,代言广州丰田致炫汽车并演唱宣传曲《Beautiful Light》;[20] 3月,参加东方卫视《不朽之名曲》苏芮专场的录制,凭借一首《容颜》惊艳全场;[21] 5月17日,出席首届中国新歌榜颁奖典礼,凭借专辑《我知道你离我不远》一举斩获亚洲最欣赏男唱将和年度十大新歌两项大奖;[22] 11月1日,陈楚生“一见如故”2014-2015全国巡回演唱会在北京工人体育馆启动,巡演其他场次及演出时期为重庆 12.14、深圳 12.18、舟山 12.21 、马鞍山12.24、昆山12.26、上海12.28、常州 12.31、潍坊 1.3、青岛 1.5、郑州 1.8、武汉1.11、东莞1.14、南京1.18、无锡 1.20、宁波 1.23,共16场,在巡演期间发行了为爱子创作的单曲《demo》。[4] 2015年3月18日,参与第五届明星公民颁奖盛典,并凭借在2014年为支援海南风灾灾后重建发起并推进的“点亮计划捐赠发电机”公益项目获封年度“明星公民”;[23] 4月11日,出席新浪娱乐十五周年晚会,并获得杰出青年;[24] 6月25日,为湖南卫视电视剧《旋风少女》献唱的片尾曲《那个远方》正式上线;[25] 7月24日,参加Martin上海发布会,成为Martin品牌中国地区首位合作艺人;[26] 7月25日,受邀参加亚洲规模最大的摇滚音乐节日本富士音乐节;[27] 9月19日,出席第24届中国金鸡百花电影节暨第30届中国电影金鸡奖颁奖典礼,献唱电影《80后》主题曲《天长地久》;[28] 9月27日,出席2015中央电视台“万家邀明月 一起过中秋”晚会,演唱歌曲《漂洋过海来看你》;[29] 10月21日,为好莱坞动画大片《精灵旅社2》献唱的片尾曲《后来的事》正式上线;[30] 10月23日,参与录制的安徽卫视综艺节目《你好,菜鸟》首播,凭借不俗表现获得首站“最佳菜鸟”称号;[31] 11月10日,亮相2015湖南卫视天猫“双十一狂欢夜”,与王铮亮合作演唱《偏偏喜欢你》《情人》《真的汉子》等经典粤语歌曲串烧;[32] 12月19日,助阵PPTV《一唱成名》,担任护航大使。 个人生活 承认结婚 陈楚生通过微博首度承认了自己已经与相恋长达十三年的女友领证结婚,并即将以1+1=3的全新模式开启今后的人生。[36] 陈楚生以“爱情不是终点,陪伴才是归宿”为标题写道:“这次特殊的家乡之行暂时告一段落了,感谢一路走来支持和帮助我们的朋友们。从上周末到现在,我知道大家都很关心我的感情和生活状况,希望我能说点什么。出道七年以来,说实话,我不算是一个有娱乐精神的艺人,也不太善于分享除了音乐之外的个人生活。对关心我们的朋友我想说:过去的十三年,我们的爱情没有传说中的那些偶像剧桥段,更没有什么富二代、富婆包养的狗血剧情。有的只是两个最平实的年轻人从懵懂的二十出头一步步细水长流的走到今天。在未来的很多个十三年里,我们将开启1+1=3的模式,继续平凡真实的油盐酱醋茶,将生活进行到底。爱情不是终点,陪伴才是归宿,愿大家都能收获自己的幸福生活。”[36] 升级当爸 2014年9月17日,据媒体报道,陈楚生妻子已诞下一名男婴。[3] 2014年10月21日,陈楚生与娇妻的唯美婚纱照首度曝光,照片中两人露出幸福笑容,温馨相拥,甜蜜之情溢于言表、羡煞旁人。 社会活动 形象大使 2007年7月,月三亚旅游形象大使;2008年1月2008,厦门国际马拉松赛“健康形象大使”;2009年6月,安徽卫视《为爱高歌》公益推广大使[38] 。 2010年1月,深圳防甲流大使;3月,第19届中国真维斯杯休闲装设计大赛 2010演唱会宣传图(9张) 活动推广大使;3月29日,成为无碳生活形象大使;6月,北京青年拍客大赛形象大使;6月4日,山东省团委少工委负责人向陈楚生颁发了"希望慈善推广大使"荣誉证书;8月12日,担任深圳世界大学生运动会形象大使[39] ;8月25日,参加全国青年代表会议,当选全国青联委员,海南省青联常委,为年轻人树榜样;10月15日,接受了共青团海南省委的邀请,担任海南国际旅游岛志愿者形象大使。 2011年3月5日,担任海南省爱心艺术团形象大使;5月4日,再度受组委会邀请,担任世界大学生运动会形象大使、校园推广大使、音乐推广大使[40] ;5月9日,作为唯一艺人代表出席大运会深圳站新闻发布会;5月10日,于深圳大学站担任深圳大运会火炬传递第7棒火炬手;5月,辽宁卫视《激情唱响》形象大使;6月,红牛新能量活动宣传大使;6月,全国残疾人V歌赛推广大使;7月,琼海市《低碳看你》休闲体育系列活动形象大使;10月,安徽池州举行的“全国首届绿色运动大会”形象大使。 2012年1月,“雅鹿”品牌温暖大使;6月,海航公益形象大使。 公益活动 2008年5月4日,荣当2008年北京奥运会第52棒火炬手;5月14日,参加音乐之声百名歌星赈灾公益歌曲《相信爱》录音以及MV拍摄;5月15日,晚参加两岸三地百位明星赈灾歌曲《承诺》录制以及MV拍摄; 5月16日,参加深圳卫视“抗震救灾 深圳有爱”募捐晚会义演;5月22日,参加湖南卫视《五月的烛光》赈灾追思会,首唱原创赈灾单曲《与你同在》;5月24日,参加北京星光现场“捐助灾区母婴,重建美好家园”慈善义演;6月8日,参加湖南卫视联合成都传媒集团共同举办的抗震救灾“端午家园情”特别晚会;9月8日,参加深圳音乐广播“飞扬之音大爱中国”中秋特别活动,为灾区孩子爱心音乐教学,送月饼、文具、书籍。 […]
View Details赵鹏
赵鹏,一个1.88米瘦高的男人,却拥有出色的男低音。演绎出一种男人的心声。16岁开始学习声乐并开始词曲创作,因创作歌曲《其实我真的很丑》成为齐齐哈尔市音乐家协会会员。1998年考入广州星海音乐学院学习声乐,先后从师著名歌唱家罗洪副教授和黎国坤教授。 个人经历 赵鹏,男低音歌唱家,生长在那个冰雪皑皑的北国城市-黑龙江省齐齐哈尔。16岁师从于秀坤老师学习声乐,同年,开始早期 赵鹏 的歌曲创作。1998年考入广州星海音乐学院,先后师从罗洪教授、黎国坤教授学习美声唱法及通俗唱法。2000年组建扩张乐队,学生期间带领扩张乐队荣获广东及全国的11项大奖,2004年赵鹏将扩张乐队更名为惊堂木乐队,活跃在全国的演出舞台。同年,赵鹏以个人名义推出首张个人专辑《人声低音炮Ⅰ闪亮的日子》,成为Hi-Fi界的销量神话,并由此获得“人声低音炮”称号。至2010年共推出12张专辑、1张合辑及1张MTV合辑。[1] 1988年毕业于黑龙江省艺术学校,出演八集电视剧《塞外悲歌》; 1989年参加哈尔滨北冰洋轻音乐团的全国巡演; 1990年参加辽宁芭蕾舞团轻音乐团的全国巡演,考入中国音乐学院明星班; 1991年录制电视剧《再别康桥》主题歌及电视剧《万能人》主题歌《什么都能做到》; 1992年录制第一首单曲《贺年卡》,并由中央电视台拍摄成为音乐电视作品; 1993年签约新加坡瑞得唱片公司; 2000年在校期间组建“扩张乐队”,并在其中担任主唱、队长兼节奏吉他。在他的带领下,乐队于2000年至2002年间荣获了8项比赛的11项大奖,原创作品《来吧》、《那一天》、《诺言》 赵鹏 、《胡思乱想》、《闪亮登场》、《醒来后》、《没有人能把你带走》在社会上倍受好评; 2004年2月其乐队正式改名为惊堂木乐队; 2004年8月,赵鹏推出专辑《人声低音炮》系列,在市场上获得很大成功。这套专辑不仅成了赵鹏的代称,还成为了音响发烧友们必备的试音宝典。 1995年签约北京鸟人艺术推广公司,在电视连续剧《陌生海岸》中出演重要角色; 1996年推出首张个人专缉《北京夜总会》; 1997年推出单曲《如何才能告诉她》《候鸟》; 1998年签约北京维多利文化艺术发展中心,推出单曲《花蝴蝶》,此歌参加第五届全国音乐电视大赛; 1999年推出与含笑合唱的单曲《兄弟有缘》; 2002年毕业于星海音乐学院; 2016年1月4日,参加芒果tv《我是歌手 谁来踢馆》 主要作品 人声低音炮Vol.1闪亮的日子 人声低音炮Vol.2月光森林 人声低音炮Vol.3我的神话 人声低音炮Vol.4一生守候 《测试王1》 《测试王2》 《王者无疆》 《再低音一次》,含歌曲“山茶花”等 《低音风12级》 个人写真(5张) 原创同名唱片《赵鹏》 《三套车》 《低音 共鸣》 个人演出 2013年初,去深圳音乐厅演出,以及办了一场新碟签唱会,与在深圳的朋友们小聚了一次。7月初,又要去深圳演出,依然是深圳音乐厅,连续3场演唱会。不过好像是不售票的,属于政府主办,所以也许有些朋友无法到现场听歌了。[3-4] 赵鹏的电台情歌——人声低音炮2013年北京演唱会 时间:2013.5.19 场馆:保利剧院
View Details侧柏叶的功效与作用
侧柏叶为柏科植物侧柏的嫩枝叶。药材侧柏叶多有分支,小且长短不一,为鳞片状。颜色为红褐色。表面可见叶相互对生,断面黄白色。质地松脆、易被折断。气微香,味苦涩中药止血药的凉血止血药中的一种,有止血、乌须发、止咳喘的功效。 作用&功效 1 功用主治 凉血,止血,祛风湿,散肿毒。治吐血、衄血、尿血、血痢、肠风、崩漏,风湿痹痛,细菌性痢疾,高血压,咳嗽,丹毒,痄腮,烫伤。 2 治疗秃发 用鲜侧柏叶浸泡于60%酒精中,7天后滤取药液,涂擦毛发脱落部位,每日3次。观察13例(均为前额、头顶至后枕部脱发,斑秃不在此列),治后全部均见毛发生长,如能坚持连续涂擦并酌量增加药物浓度,则毛发生长可较密,同时也不易脱落。 治疗百日咳 用新鲜侧柏叶(连幼枝)1两,加水煎成100毫升,再加蜂蜜20毫升。如用干品,则每两煎成150毫升,另加蜂蜜30毫升。剂量:1岁以内每次10~15毫升,1~3岁15~30毫升,4岁以上30~50毫升,均日服3次。视病情需要连服1~3周。治疗越早,疗效越高,疗程亦短。配制本剂时可酌加防腐剂,否则超过4天即转酸味或起白沫。侧柏以新鲜者效果较佳。 治疗肺结核 一静脉点滴:100%侧柏叶注射液20~30毫升加入10%葡萄糖溶液150毫升中,1小时左右滴完; 二静脉注射:100%侧柏叶注射液20~30毫升加入10%葡萄糖溶液30毫升中,15分钟左右注射完毕。64例患者经治1个月以上,临床治愈9例,显著好转6例,好转32例,无变化12例,恶化5例。疗程一般为2个月,对新鲜结核病灶和浸润期疗效较好,对陈旧性结核及厚壁纤维空洞型疗效较差。应用过程中未见毒性反应。 治疗慢性气管炎 取侧柏叶3700克,水煎浓缩成1:2的稠膏;另用侧柏叶300克研成细粉,拌入稠膏中,烘干,压制成片,每片重0.5克。每日3次,每次4片,饭后服,连服10天为一疗程。或用侧柏叶、鼠曲草(即佛耳草)各1.5两,制成片剂,一日分三次饭后服,连服10天为一疗程。副反应有上腹部不适、腹胀、恶心、呕吐、胃纳不佳、咽干、头晕等,不需处理,短时间内能自行消失。少数病员曾出现皮疹瘙痒或眼睑、面部、下肢浮肿,可能系药物过敏反应,停药后即自行消失。 治疗急、慢性细菌性痢疾 将侧柏叶晒干或焙干后研成粗末,加入18%的酒精,以浸漫药粉为度,浸泡4昼夜,滤取浸液。每次50毫升(儿童酌减),日服3次,7~10天为一疗程。共治114例,治愈100例,治愈率87.7%。实验证明,该浸剂有较好的抑菌或杀菌效果。如经煮沸、高压消毒,或加防腐剂,则会影响疗效。 治吐血不止 柏叶、干姜各15克,艾三把。上三味,以水五升,取马通汁一升,合煮,取一升,分温再服。(《金匮要略》柏叶汤) 治忧恚呕血,烦满少气,胸中疼痛 柏叶捣罗为散,不计时候,以粥饮调下10克。(《圣惠方》) 治小便尿血 柏叶,黄连(焙研)。酒服15克。(《济急仙方》) 治蛊痢,大腹下黑血,茶脚色,或脓血如靛色 柏叶(焙干为末)、黄连。二味同煎为汁服之。(《本草图经》) 治小儿洞痢 柏叶煮汁,代茶饮之。(《经验方》) 其他疗效 治痔、肠风、脏毒、下血不止;治历节风痛,痛如虎咬,走注周身,不能转动,动即痛极,昼夜不宁;治高血压,治流行性腮腺炎。 from:http://jingyan.baidu.com/article/59a015e384c62bf7948865a4.html
View Details使用alibaba的otter进行MSYQL数据库同步(转载)
otter依赖于canal提供数据库日志,针对mysql数据有一些要求,具体请查看:https://github.com/alibaba/canal/wiki/QuickStart 有一点特别注意:目前canal支持mixed,row,statement多种日志协议的解析,但配合otter进行数据库同步,目前仅支持row协议的同步,使用时需要注意. show variables like '%binlog_format%'; SET SESSION binlog_format = 'ROW'; SET GLOBAL binlog_format = 'ROW'; #SET SESSION binlog_format = 'STATEMENT'; #SET GLOBAL binlog_format = 'STATEMENT'; #SET SESSION binlog_format = 'MIXED'; #SET GLOBAL binlog_format = 'MIXED'; 环境准备 1. 操作系统 a. otter为纯java编写,windows/linux均可支持 b. jdk建议使用1.6.25以上的版本,稳定可靠,目前阿里巴巴使用基本为此版本 2. 整个otter同步由几部分组成,需要预先进行安装,后续会有专门的篇幅展开介绍 manager node 3. otter node依赖于zookeeper进行分布式调度,需要安装一个zookeeper节点或者集群. 重要:考虑异地机房的地域性,node机器会优先选择就近的zookeeper节点进行访问,比如国际站会在杭州和美国各部署node,针对美国的node会选择美国的zookeeper进行访问,提升读效率. ps. 不同机房的zookeeper集群组成一个物理大集群,只不过是根据地域不同划分为不同逻辑集群,所有地域的node机器对zookeeper进行写操作都会发到一个地域的zookeeper进行paoxs算法仲裁. 所以,manager启动完成后,需要首先定义不同机房的zookeeper机器集群。 比如:目前otter使用的zookeeper集群,在杭州会有3个机房,分别部署3+2+2台机器组成一个leader/follower集群,在美国一个机房部署2台机器,做为杭州机房zookeeper的observer(读镜像),(observer模式特点:读请求在自己本地,写请求代理到leader/follower上投票处理,然后异步接收leader的写结果反馈. ) observer配置文档: http://zookeeper.apache.org/doc/trunk/zookeeperObservers.html 说明:添加了zookeeper集群后,会在添加node和canal时自动出现在可选列表里。 这也是添加node和canal的一个前提 环境安装 1. manager安装 Otter Manager QuickStart: Manager_Quickstart 2. node安装 Otter Node QuickStart : Node_Quickstart 网友分享 网友安装otter过程记录,供未接触java/mvn开发的运维人员使用 :http://blog.sina.com.cn/s/articlelist_1869333262_0_1.html 操作演示 演示视频(5分钟教你配置一个同步任务):请点击图片或者这里 演示说明: 1. 搭建一个数据库同步任务,源数据库ip为:10.20.144.25,目标数据库ip为:10.20.144.29. 源数据库已开启binlog,并且binlog_format为ROW.
|
1 |
mysql> show variables like '%binlog_format%'; +---------------+-------+ | Variable_name | Value | +---------------+-------+ | binlog_format | ROW | +---------------+-------+ |
2. 数据同步精确到一张表进行测试,测试的表名为test.example,简单包含两个子段,测试过程中才创建. […]
View Details学一点 mysql 双机异地热备份——快速理解mysql主从,主主备份原理及实践
双机热备的概念简单说一下,就是要保持两个数据库的状态自动同步。对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据库数据一致。 这样做的好处多。 1. 可以做灾备,其中一个坏了可以切换到另一个。 2. 可以做负载均衡,可以将请求分摊到其中任何一台上,提高网站吞吐量。 对于异地热备,尤其适合灾备。废话不多说了。我们直接进入主题。 我们会主要介绍两部分内容: 一, mysql 备份工作原理 二, 备份实战 我们开始。 我使用的是mysql 5.5.34, 一, mysql 备份工作原理 简单的说就是把 一个服务器上执行过的sql语句在别的服务器上也重复执行一遍, 这样只要两个数据库的初态是一样的,那么它们就能一直同步。 当然这种复制和重复都是mysql自动实现的,我们只需要配置即可。 我们进一步详细介绍原理的细节, 这有一张图: 上图中有两个服务器, 演示了从一个主服务器(master) 把数据同步到从服务器(slave)的过程。 这是一个主-从复制的例子。 主-主互相复制只是把上面的例子反过来再做一遍。 所以我们以这个例子介绍原理。 对于一个mysql服务器, 一般有两个线程来负责复制和被复制。当开启复制之后。 1. 作为主服务器Master, 会把自己的每一次改动都记录到 二进制日志 Binarylog 中。 (从服务器会负责来读取这个log, 然后在自己那里再执行一遍。) 2. 作为从服务器Slave, 会用master上的账号登陆到 master上, 读取master的Binarylog, 写入到自己的中继日志 Relaylog, 然后自己的sql线程会负责读取这个中继日志,并执行一遍。 到这里主服务器上的更改就同步到从服务器上了。 在mysql上可以查看当前服务器的主,从状态。 其实就是当前服务器的 Binary(作为主服务器角色)状态和位置。 以及其RelayLog(作为从服务器)的复制进度。 例如我们在主服务器上查看主状态:
|
1 2 3 4 5 6 7 |
mysql> show master status\G *************************** 1. row *************************** File: mysql-bin.000014 Position: 107 Binlog_Do_DB: Binlog_Ignore_DB: mysql,information_schema,performance_schema,amh 1 row <span class="kwrd">in</span> set (0.00 sec) |
稍微解释一下这几行的意思: 1. 第一行表明 当前正在记录的 binarylog文件名是: mysql-bin.000014. 我们可以在mysql数据目录下,找到这个文件: 2. 第二行, 107. 表示当前的文件偏移量, 就是写入在mysql-bin.000014 文件的记录位置。 这两点就构成了 主服务器的状态。 配置从服务器的时候,需要用到这两个值。 告诉从服务器从哪读取主服务器的数据。 (从服务器会登录之后,找到这个日志文件,并从这个偏移量之后开始复制。) 3. […]
View DetailsC# windows服务:如何检测指定的Windows服务是否启动
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
public void CheckServerState(string ServiceName) { ServiceController[] service = ServiceController.GetServices(); bool isStart = false; bool isExite = false; for (int i = 0; i < service.Length; i++) { if (service[i].ServiceName.ToUpper().Equals(ServiceName.ToUpper())) { isExite = true; server = service[i]; if (service[i].Status == ServiceControllerStatus.Running) { isStart = true; break; } } } if (!isExite) { this.label1.Text = ("不存在此服务"); }else{ if (isStart) { this.label1.Text = ("服务已经启动"); } else { this.label1.Text = ("服务没启动"); } } } |
from:http://www.cnblogs.com/lujin49/p/3527704.html
View DetailsC#windows service服务安装、注册、判断服务是否存在、是否启动
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 |
#region Windows服务控制区 #region 安装服务 /// <summary> /// 安装服务 /// </summary> private bool InstallService(string NameService) { bool flag = true; if (!IsServiceIsExisted(NameService)) { try { string location = System.Reflection.Assembly.GetExecutingAssembly().Location; string serviceFileName = location.Substring(0, location.LastIndexOf('\\') + 1) + NameService + ".exe"; InstallmyService(null, serviceFileName); } catch { flag = false; } } return flag; } #endregion #region 卸载服务 /// <summary> /// 卸载服务 /// </summary> private bool UninstallService(string NameService) { bool flag = true; if (IsServiceIsExisted(NameService)) { try { string location = System.Reflection.Assembly.GetExecutingAssembly().Location; string serviceFileName = location.Substring(0, location.LastIndexOf('\\') + 1) + NameService + ".exe"; UnInstallmyService(serviceFileName); } catch { flag = false; } } return flag; } #endregion #region 检查服务存在的存在性 /// <summary> /// 检查服务存在的存在性 /// </summary> /// <param name=" NameService ">服务名</param> /// <returns>存在返回 true,否则返回 false;</returns> public static bool IsServiceIsExisted(string NameService) { ServiceController[] services = ServiceController.GetServices(); foreach (ServiceController s in services) { if (s.ServiceName.ToLower() == NameService.ToLower()) { return true; } } return false; } #endregion #region 安装Windows服务 /// <summary> /// 安装Windows服务 /// </summary> /// <param name="stateSaver">集合</param> /// <param name="filepath">程序文件路径</param> public static void InstallmyService(IDictionary stateSaver, string filepath) { AssemblyInstaller AssemblyInstaller1 = new AssemblyInstaller(); AssemblyInstaller1.UseNewContext = true; AssemblyInstaller1.Path = filepath; AssemblyInstaller1.Install(stateSaver); AssemblyInstaller1.Commit(stateSaver); AssemblyInstaller1.Dispose(); } #endregion #region 卸载Windows服务 /// <summary> /// 卸载Windows服务 /// </summary> /// <param name="filepath">程序文件路径</param> public static void UnInstallmyService(string filepath) { AssemblyInstaller AssemblyInstaller1 = new AssemblyInstaller(); AssemblyInstaller1.UseNewContext = true; AssemblyInstaller1.Path = filepath; AssemblyInstaller1.Uninstall(null); AssemblyInstaller1.Dispose(); } #endregion #region 判断window服务是否启动 /// <summary> /// 判断某个Windows服务是否启动 /// </summary> /// <returns></returns> public static bool IsServiceStart(string serviceName) { ServiceController psc = new ServiceController(serviceName); bool bStartStatus = false; try { if (!psc.Status.Equals(ServiceControllerStatus.Stopped)) { bStartStatus = true; } return bStartStatus; } catch (Exception ex) { throw new Exception(ex.Message); } } #endregion #region 修改服务的启动项 /// <summary> /// 修改服务的启动项 2为自动,3为手动 /// </summary> /// <param name="startType"></param> /// <param name="serviceName"></param> /// <returns></returns> public static bool ChangeServiceStartType(int startType, string serviceName) { try { RegistryKey regist = Registry.LocalMachine; RegistryKey sysReg = regist.OpenSubKey("SYSTEM"); RegistryKey currentControlSet = sysReg.OpenSubKey("CurrentControlSet"); RegistryKey services = currentControlSet.OpenSubKey("Services"); RegistryKey servicesName = services.OpenSubKey(serviceName, true); servicesName.SetValue("Start", startType); } catch (Exception ex) { return false; } return true; } #endregion #region 启动服务 private bool StartService(string serviceName) { bool flag = true; if (IsServiceIsExisted(serviceName)) { System.ServiceProcess.ServiceController service = new System.ServiceProcess.ServiceController(serviceName); if (service.Status != System.ServiceProcess.ServiceControllerStatus.Running && service.Status != System.ServiceProcess.ServiceControllerStatus.StartPending) { service.Start(); for (int i = 0; i < 60; i++) { service.Refresh(); System.Threading.Thread.Sleep(1000); if (service.Status == System.ServiceProcess.ServiceControllerStatus.Running) { break; } if (i == 59) { flag = false; } } } } return flag; } #endregion #region 停止服务 private bool StopService(string serviceName) { bool flag = true; if (IsServiceIsExisted(serviceName)) { System.ServiceProcess.ServiceController service = new System.ServiceProcess.ServiceController(serviceName); if (service.Status == System.ServiceProcess.ServiceControllerStatus.Running) { service.Stop(); for (int i = 0; i < 60; i++) { service.Refresh(); System.Threading.Thread.Sleep(1000); if (service.Status == System.ServiceProcess.ServiceControllerStatus.Stopped) { break; } if (i == 59) { flag = false; } } } } return flag; } #endregion #endregion |
from:http://blog.csdn.net/smartsmile2012/article/details/8666635
View DetailsC#如何以管理员身份运行程序
在使用winform程序获取调用cmd命令提示符时,如果是win7以上的操作系统,会需要必须以管理员身份运行才会执行成功,否则无效果或提示错误。 比如在通过winform程序执行cmd命令时,某些情况下如果不是以管理员身份运行,则会提示命令无效。 或者通过winform程序执行Windows Service 服务时,也需要以管理员身份才能调用Service服务。 下面讲解一下如何使程序获取管理员权限来运行。 一: 在Visual Studio 中--解决方案资源管理器--右键项目名称--属性,找到“安全性”选项, 二:勾选“启用ClickOnce安全设置”, 三:这时,在项目下面会多出一个“app.manifest”的文件,选中它,并找到代码段<requestedExecutionLevel level="asInvoker" uiAccess="false" />,将其改为:<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />, 打开: 将上图部分修改为: 四:改正后,不要急于重新编译生成,再次打开“属性--安全性”界面, 将“启用ClickOnce安全设置”前面的勾去掉后再编译运行。 不然程序会报错无法运行。 五:最后,保存修改,重新编译运行程序。 打开程序时,会提示“用户账户控制”来获取管理员权限运行,点击“是”则获取了管理员权限。 from:http://www.cnblogs.com/babycool/p/3569183.html
View Detailsmysql通过binlog恢复数据
如果mysql不小心操作失误导致数据错误或者丢失这时候binlog起到了很大的作用 恢复有几种方式 1.按时间恢复--start-datetime 如果确定了时间点,那么按时间恢复是一个再好不过的事,一般是通过日常的定期备份+差异备份(日志) 如果日常备份在4点,出错的时间在12:00点,12:30发现的,首先我们要确认12点出了什么错,12点以后的数据还能不能继续使用,如果不影响,那么我们只需跳过12:00执行的数据即可 首先,恢复4点的备份 然后,通过binlog获取4点到11:59的数据,获取的数据可以直接作用到数据库中,避免二次污染,最好先生成sql文件 mysqlbinlog --start-datetime="2014-11-07 04:01:00" --stop-datetime="2014-11-07 11:59:00" /data/mysql/data/mysql-bin.000020 >/home/madong/aa.sql 在获取12:01-12:30的数据 mysqlbinlog --start-datetime="2014-11-07 12:01:00" --stop-datetime="2014-11-07 12:30:00" /data/mysql/data/mysql-bin.000020 >>/home/madong/aa.sql 最后通过mysql命令行 source /home/madong/aa.sql 如果12点以后的数据还不能继续使用 那么我们只需要恢复到12点,12:00-12:30的数据就不需要恢复 2.通过--start-position节点 思路和上面的一样,首先要确定节点的id,在恢复 例: 描述:2014-11-07 13:50 游戏数据库数据全部清空 故障发现时间:13:50 故障发生时间:13:40左右 故障结束时间:15:55 恢复过程: 故障触发,游戏马上关服,进行维护,故障原因已知(数据没了) 1.首先确认恢复时间点 恢复带2014-11-07 13:30 2.因为刚开服不久,所以准备从最原始开始恢复,不从4点的完整备份节点恢复 准备不直接操作,先生成sql, mysqlbinlog --start-datetime="2014-11-06 09:50:00" --stop-datetime="2014-11-07 13:30:00" /data/mysql/data/mysql-bin.000020 >/home/madong/aa.sql (aa.sql 500M左右) 3.因数据库重置之后又有玩家注册,如果导入数据会出现主键冲突,所以再次清空数据库(保留基表数据) 4.导入sql 进入mysql命令行,并切换数据库(use DBNAME) source /home/madong/aa.sql 执行开始时间14:57 结束时间15:54 大约一个小时 from:http://www.cnblogs.com/liuyisai/p/5621909.html
View Details“sgen.exe”已退出,代码为 1
解决方案:visual studio 2010 选定web项目,右键选择“属性”—“生成”,将“生成序列化程序集”设成“关闭”。 若你使用的是Visual Studio 2012,还需要在“标准”工具栏将“解决方案配置”设置为 Release 模式(Visual Studio 2012 默认使用 Release 模式发布 Web 应用),然后再进行上述操作即可。 from:http://www.cnblogs.com/songling/p/3623612.html
View Details