原文:http://www.cnblogs.com/tianhuilove/archive/2011/09/05/2167795.html
阅读全文 >>tee命令可以将mysql操作日志输出到指定文件中,如果文件已存在则追加。命令行参数可以使用–tee=file_path,命令中可以使用tee或\T,想要退出使用日志可以使用\t1
2
3
4
5
6$ mysql -u root -p --tee=mysql.log
Logging to file 'mysql.log'
mysql> tee mysql.log 或 \T mysql.log
Logging to file 'mysql.log'
mysql> \t mysql.log
Outfile disabled
1 | mysql> system uname; |
1 | mysql> source mysql.sql |
1 | mysql> prompt \u@\d> |
需要使用双引号括起来1
2
3wxnacy@wxnacydeMacBook-Pro: ~ $ mysql -u root -p --prompt="\u@\d> "
root@(none)> use test;
root@test>
1 | wxnacy@wxnacydeMacBook-Pro: ~ $ export MYSQL_PS1="\u@\d> " |
也可以在配置中一劳永逸1
2
3
4
5
6[mysql]
prompt=\\u@\\d>\\ # 要多加一个反斜线\
又或者:
[mysql]
prompt="\u@\d> "
1 | Option Description |
当使用命令 select 结果,如果表属性特别多的时候,查看起来非常难受,在 select 语句
后使用\G
(必须大写),可以让结果按行垂直显示1
mysql> select * from user\G;
1 |
|
使用mysql客户端的参数–html或者-T,则所有SQL的查询结果会自动生成为html的table代码1
2$ mysql -u root --html -p
mysql> select * from user;
1 | <TABLE BORDER=1><TR><TH>id</TH><TH>name</TH><TH>is_del</TH><TH>create_ts</TH> <TH>update_ts</TH></TR><TR><TD>1</TD><TD>wxnacy</TD><TD>0</TD><TD>2017-08-08 07:46:42</TD><TD>2017-08-08 07:46:42</TD></TR></TABLE> |
使用mysql客户端的参数–xml或者-X选项,可以将结果输出为xml格式1
2$ mysql -u root --xml -p
mysql> select * from user;
1 | <?xml version="1.0"?> |
当select查询结果很多时,一屏幕往往无法装下。使用pager命令后在进行select命令,可以进入类似linux中more或less查看文件的效果1
2
3
4
5
6mysql> pager more
PAGER set to 'more'
mysql> select * from user;
...
mysql> nopager #退出pager状态
PAGER set to stdout
专辑:ansible学习笔记
Ansilbe 是一个部署一群远程主机的工具。远程的主机可以是远程虚拟机或物理机,也
可以是本地主机。Ansilbe 是一个部署一群远程主机的工具。远程的主机可以是远程虚拟机
或物理机,也可以是本地主机。
1 | pip install ansible |
修改/etc/ansible/hosts 全局hosts文件,没有的话自己创建1
2
3
4
5[wxnacy] # 如果服务器使用密码登录就用这个方式保存密码,避免每次输入
wxnacy.server.org ansible_ssh_pass=your_pass ansible_ssh_user=your_name
[prod] # 如果服务器使用sshkey登陆(推荐使用)
prod.server.org ansible_ssh_user=your_name ansible_ssh_private_key_file=key_path
1 | $ ansible all -m ping |
得到如上样式结果即为正确,另外执行 ansible wxnacy -m ping
可以针对某一个服务器
组进行操作
1 | $ ansible prod -m shell -a "uname -a" |
在一些项目中,全局hosts配置不能满足需求,需要指定hosts命令,可以执行如下命令1
ansible my -i hosts_path -m ping
专辑:ansible学习笔记
Playbooks 是 Ansible的配置,部署,编排语言.他们可以被描述为一个需要希望远程主机执行命令的方案,或者一组IT程序运行的命令集合.
一个playbook就是一个YAML文件,所以playbook文件一般都以.yml结尾,一个playbook文件由一个或多个play组成,每个play定义了在一个或多个远程主机上执行的一系列的task,其中每个task一般就是调用一个ansible的模块,如调用copy模块复制文件到远程主机或调用shell模块执行命令。
配置deploy.yml完成进入远程服务器的某个目录并执行git pull操作1
2
3
4
5
6- hosts: wxnacy # 它会默认使用/etc/ansible/hosts 中配置的服务器组名 也可以单独设置hosts地址
tasks:
- name: cd path and git pull # 命令名称
shell: git pull # 执行命令
args:
chdir: ~/workdir # 进入目录
运行1
2
3
4
5
6
7
8
9
10$ ansible-playbook deploy.yml
PLAY [wxnacy] **********************************************************************************************************************************************************************************************
TASK [cd path and git pull] *************************************************************************************************************************************************************************************
ok: [wxnacy.server.org]
PLAY RECAP *************************************************************************************************************************************************************************************************
wxnacy.server.org : ok=2 changed=1 unreachable=0 failed=0
执行完运行命令ansible会在webservers组中依次执行tasks,返回以上样式结果极为成功,结果通过红黄绿三种颜色标明了不同的执行结果,红色表示有task执行失败,黄色表示改变了远程主机状态。
今天目标创建acticle表,并完善
insert_comment_trigger
,以支持更新article中的comment_count,comment表新增comment_id字段
专辑:mysql每天练习
新建article
1 | drop table if exists `article`; |
修改insert_comment
1 | drop trigger if exists `insert_comment`; |
添加字段
1 | alter table comment add column comment_id int(11) not null default 0 comment '回复的评论注解id'; |
测试
1 | insert into article (name,url) values ('好文章','http://wen.com/wen.html'); |
执行完后,article中comment_count应该等于1
今天目标新建user、
user_data
表,并完善insert_commet_trigger
,达到根据判断resource_type来更新video还是user_data的comment_count
专辑:mysql每天练习
新建user表
1 | drop table if exists `user`; |
新建user_data表
1 | drop table if exists `user_data`; |
重写 insert_comment_trigger
1 | drop trigger if exists `insert_comment`; |
执行相关语句
1 | insert into user(name) values ('wxnacy'); |
执行语句后,user_data中comment_count应该等于2
今天的目标是新建一个video视频表和comment评论表,并编写trigger,达到当insert一条评论类型为video的数据到comment中时,video中comment_count字段可以自加一
专辑:mysql每天练习
新建video表
1 | drop table if exists `video`; |
添加comment_count字段(不是忘了,就是想练一下add column语句╭(╯^╰)╮)
1 | alter table video add column comment_count int(11) not null default 0 comment '评论数量'; |
新建comment表
1 | drop table if exists `comment`; |
新建trigger
1 | drop trigger if exists `insert_comment`; |
执行相应操作语句
1 | insert into video (name,url) values ('蜘蛛侠:返校季','http://woyemeiyou/wangzhi.mp4'); |
最后结果中video表中的comment_count应该等于1
tag:
缺失模块。
1、请确保node版本大于6.2
2、在博客根目录(注意不是yilia根目录)执行以下命令:
npm i hexo-generator-json-content --save
3、在根目录_config.yml里添加配置:
jsonContent: meta: false pages: false posts: title: true date: true path: true text: false raw: false content: false slug: false updated: false comments: false link: false permalink: false excerpt: false categories: false tags: true