WebRTC协议 作者: lovingyu_er 时间: 2020-05-29 20:08:19 分类: 编程语言,朝花夕拾 评论 ####WebRTC简介 WebRTC,名称源自网页即时通信(英语:Web Real-Time Communication)的缩写,是一个支持网页浏览器进行实时语音对话或视频对话的API。它于2011年6月1日开源并在Google、Mozilla、Opera支持下被纳入万维网联盟的W3C推荐标准。 [WebRTC 维基百科](https://zh.wikipedia.org/wiki/WebRTC "WebRTC 维基百科") [webrtc GitHub 仓库地址](https://github.com/webrtc "webrtc GitHub 仓库地址") [WebRtc官网](https://webrtc.org/ "WebRtc官网") [WebRTC使用文档](https://webrtc.org/getting-started/firebase-rtc-codelab "WebRTC使用文档")
MYSQL5.7 | 5.5 不同版本忘记密码的处理方式 作者: lovingyu_er 时间: 2020-05-29 19:58:00 分类: 编程语言,MYSQL,MYSQL -view 评论 ####MYsql 5.7 版本 mysql 很久没有登录了,root的密码早就忘记了,今天一大早,需要使用root以及相关子账号的权限,但是发现密码不对,记得以前只需要修改mysql的配置文件```[mysqld]```的配置option就可以了。但是今天照办,发现不行; 排查了一下问题的原因,对于MYSQL的用户身份验证: 在免密码的模式,在命令行执行```select * from mysql.user\G```看到在密码加密的一行```plugin```中,在MYSQL的官方文档中,切换到mysql5.7,输入关键词```mysql_native_password```,看到有关mysql_upgrade的详细介绍,文档地址:```https://dev.mysql.com/doc/refman/5.7/en/account-upgrades.html``` ,对比我自己的mysql的plugin信息,发现是```mysql_old_password```的,因此只需要执行一下命令进行修正即可: ```update mysql.user set plugin="mysql_native_password" where User="root" and Host="localhost";flush privileges``` 然后再考虑修改mysql的root的密码的命令: ```update mysql.user set authentication_string=password('new_password') where User="root" and Host="localhost"; flush privileges;``` 即可; 将原来mysql的配置文件中,将```skip-grant-tables``` 注释去掉即可. 最后,重启mysql ```/etc/init.d/mysql restart``` Tips:文档中,如果没有解决你的问题,你可以参考文档:```https://www.cnblogs.com/bing-yu12/p/7566280.html``` 里面对上述的不能解决的问题,做了一些补充! ####MYsql5.5 版本处理 同上一样,在配置文件中的[mysqld]部分,增加```skip-grant-tables```一行,也就是登录的时候,跳过密码的验证, 直接在命令行的模式下执行: ```update user set password=password("Your Password") where user="root";``` ```flush privileges;``` 执行完毕以后,退出命令行,再将上述的```skip-grant-talbes```注释掉,重启``/etc/init.d/mysql restart``` 重启以后,即可.
放牛 作者: lovingyu_er 时间: 2020-05-29 16:15:25 分类: 朝花夕拾 评论 人生,有时候好累,精力集中不了: 突然好想去放牛 , 没有压力,没有江湖套路。以我的智商,只放一头,多了我也数不过来,它吃草,我趴在牛身上睡觉,牛丢了,我也就丢了……省心
Mac系统下zsh和bash的切换 作者: lovingyu_er 时间: 2020-05-28 08:52:22 分类: 编程语言,Ubuntu 评论 MAC OS下切换默认终端为zsh 前一段时间,在一个公众号发现了一款不错的命令行的终端软件```zsh```,发现这个工具还蛮好用,用了一段时间,发现是好用,但是总感觉很别扭,最终还是考虑将```bash```切换回来。 切换为```zsh```的命令如下: 1. ```chsh -s /bin/zsh``` 切回```bash```命令如下: 2. ```chsh -s /bin/bash``` 作为一个备注,方便以后查询和使用
使用swoole的协程出现Co\run function找不到 作者: lovingyu_er 时间: 2020-05-26 01:21:16 分类: 编程语言,PHP,php7底层设计和源码实现,Swoole-PHP 评论 ``` PHP Fatal error: Uncaught Error: Call to undefined method Swoole\Coroutine\Server::handler() in /Users/darry/php_about/loving_code/swoole/coroutine/swoole_coroutine.php:23 Stack trace: #0 {main} thrown in /Users/darry/php_about/loving_code/swoole/coroutine/swoole_coroutine.php on line 23 Fatal error: Uncaught Error: Call to undefined method Swoole\Coroutine\Server::handler() in /Users/darry/php_about/loving_code/swoole/coroutine/swoole_coroutine.php:23 Stack trace: #0 {main} thrown in /Users/darry/php_about/loving_code/swoole/coroutine/swoole_coroutine.php on line 23 ``` 代码是tcp 的client端 ``` //Swoole\Runtime::enableCoroutine(); //此行代码后,文件操作,sleep,Mysqli,PDO,streams等都变成异步IO,见'一键协程化'章节 $s = microtime(true); $host = "127.0.0.1"; $port = '9999'; $timeout = 0.5; Swoole\Coroutine::create(function()use ($s,$host,$port,$timeout){ $client = new Swoole\Coroutine\Client(SWOOLE_SOCK_TCP); if(!$client->connect($host,$port,$timeout)){ echo "connect failed . Error : ".$client->errCode.PHP_EOL; }else{ $client->send(date("Y-m-d H:i:s ",$s). " msg :hello world " .PHP_EOL); echo date("Y-m-d H:i:s")." Recive ms : ".$client->recv().PHP_EOL; $client->close(); } }); ``` 解决方案,swoole官方给出的建议, 1. 检查swoole的版本,swoole的协程是在4.4.0+以后才出现的,检查版本可以使用swoole函数```swoole_version()```活着使用命令行```php --ri swoole```查看返回的字符串的```Version```的提示。 2. 如果1的满足,那么查看php是否关闭swoole的短协程名称,请打开即可。 ```swoole.use_shortname=On/Off ```来```开启 / 关闭```短名,默认为```开启```,我关闭了,由于是在```php.ini```中配置, 别的项目需要将这个配置项目关闭,偶尔不考虑打开这个,直接采用第三个解决方案。 3. 使用使用 ```Coroutine::create``` 方法替换 ```Co\Run``` 或 ```go``` 来创建协程; 问题就解决了: 参考文档: 1. ```https://wiki.swoole.com/#/question/use?id=call-to-undefined-function-corun```