笔记

vscode 保存自动按eslint格式化

三步走:

  1. 安装 vuter,eslint,Prettier-code fromatter
    vuter 是 vue 高高亮插件,安装后 vscode 就可以识别.vue文件了
  2. 配置 vscode 首选项
    选择 file 》Preferences 》Settings 打开配置。然后选择 User Settings,点击右上角的{}按钮,进入文本编辑状态
  3. 配置内容

nohup命令说明

nohup是Linux的一个常用命令,当你想要在退出账户或者关闭终端后进程仍在运行时,就可以使用nohup命令。nohup就是不挂断的意思(no hang up)。

nohup的一般形式为:

1
nohup command >> file 2>&1 &

如果不将 nohup 命令的输出重定向,输出将附加到当前目录的 nohup.out 文件中,否则就是自己指定的文件。

git reset命令详解

git reset命令,非常牛的一个命令,这个命令可以让你时光穿梭回到过去。用在自己分支上很好用,但是千万不要在公共分支上使用。以免造成历史混乱,破坏历史可是重罪,别看那些穿越小说混的风生水起,那都是骗人的。

用git reset之前先要了解几个概念

  • HEAD
    这是当前分支版本顶端的别名,也就是在当前分支你最近的一个提交,也就是本地仓库,即你的commit记录

  • Index
    index也被称为staging area,即add的记录

  • Working Copy
    working copy代表你正在工作的那个文件

mysql权限说明

关于mysql的权限简单的理解就是mysql允许你做你权利以内的事情,不可以越界。比如只允许你执行select操作,那么你就不能执行update操作。只允许你从某台机器上连接mysql,那么你就不能从除那台机器以外的其他机器连接mysql。

那么Mysql的权限是如何实现的呢?这就要说到mysql的两阶段验证,下面详细介绍:
第一阶段:服务器首先会检查你是否允许连接。因为创建用户的时候会加上主机限制,可以限制成本地、某个IP、某个IP段、以及任何地方等,只允许你从配置的指定地方登陆。
第二阶段:如果你能连接,Mysql会检查你发出的每个请求,看你是否有足够的权限实施它。比如你要更新某个表、或者查询某个表,Mysql会查看你对哪个表或者某个列是否有权限。再比如,你要运行某个存储过程,Mysql会检查你对存储过程是否有执行权限等。

git保存密码

git每次提交都输入密码,非常麻烦,让它记住密码就好了。一劳永逸的做法是永久保存,这样每次都不用输入密码。但是,这样会有安全问题,如果电脑忘了关机,任何人都可以对其进行操作。最好是让密码有个时效性,当超过了指定时间,密码自动失效。

mysql主从配置

本教程配置是mysql5.7 不同的版本配置方式有差异,仅供参考

Master的配置

修改配置

修改/etc/mysql/mysql.conf.d/mysqld.cnf(配置文件具体位置根据)

1
2
3
4
5
6
7
[mysqld]
log-bin=mysql-bin
server-id=2
binlog-ignore-db=information_schema
binlog-ignore-db=cluster
binlog-ignore-db=mysql
binlog-do-db=test

这里的server-id用于标识唯一的数据库,在从库必须设置为不同的值。

binlog-ignore-db:表示同步的时候忽略的数据库

binlog-do-db:指定需要同步的数据库

配置完成后重启mysql服务

团队开发中如何使用git分支

git已经成为团队代码管理的标配,合理的使用git分支进行开发,可以大大提高开发效率,降低管理成本。好多人听过git fllow,但都是一知半解,其实并不神秘,也很简单。这是很多研发团队总结出来的一种分支策略而已。

前后端分离session跨域解决方案

session

php的session比cookie安全,这是好多人知道的常识。session的数据是存放在服务端的,那么程序是如何取到对应的session呢?
那是因为每一个session都有一个身份证号,那就是session id。这个东西一般情况下,服务器会发送给客户端,客户端将它放在cookie里。
cookie是存在跨域问题的,什么叫跨域呢?a.domain.com下创建的cookie,在b.domain.com下是无法使用的,我们需要进行跨域设置。

axios

用过vue开发前后端分离程序的人对axios相比都不陌生了,js前后端分离,如果前后端用两个域名,也存在跨域问题。