MYSQL 常用操作命令

2020年05月19日 · Linux · 技术帮助分享 · 38次阅读
------正---文------
  • 备份一张表

CREATE TABLE targetTable LIKE sourceTable; 
INSERT INTO targetTable SELECT * FROM sourceTable; 

比较实用
  • 查看某个库总共有多少张表

SELECT COUNT(*) TABLES, table_schema FROM information_schema.TABLES  WHERE table_schema = 'database_name'
  • 查看某库某表auto_increment的当前值

//查看test_user库user表的auto_increment的值
select auto_increment from information_schema.tables where table_schema='test_user' and table_name='user';
  • 修改某库某表的auto_increment值

//修改test_user库user表的auto_increment值为1000
alter table test_user.user auto_increment=10000;
  • 给某个字段加auto_increment

ALTER TABLE 表名 MODIFY COLUMN c_id int(11) NULL AUTO_INCREMEN

alter table customers change id id int not null auto_increment primary key;

ALTER TABLE tabelname ADD new_field_id int(5) unsigned default 0 not null auto_increment ,ADD primary key (new_field_id);
  • MYSQL删除数据库

drop database db_name;
  • 查看库中所有的视图

show table status where comment='view';
  • 查看已有视图的创建语句

show create view VIEW_NAME;
  • 删除视图

 DROP VIEW [IF EXISTS] view_name;
  • mysqldump 不想因为Error而中断

mysqldump --force //--force参数
  • tee 将source命令的打印结果输出到指定文件中,便于查年source中的Error

//tee的功能是把你的所有输入和输出都记录到日志文件中去

tee /tmp/xxx.out (xxx.out为log文件的文件名)

source xxx.sql;

// 使用notee命令来关闭日志记录
notee;
  • Mysqlbinlog 查看

/usr/local/mysql/bin/mysqlbinlog --base64-output=DECODE-ROWS -v mybinlog.000042 | less

--base64-output=DECODE-ROWS -v 这个参数是为了base64解码用的,便于看到原始的sql语句
  • 通过mysqlbinlog 和 grep 命令定位binlog 指定操作

mysqlbinlog --base64-output=DECODE-ROWS -v mybinlog.000042 | grep -i -A 10 -B 10 'delete xxx' > result.log //将结果重定向到result.log中

grep -A 后几行
grep -B 前几行

转载自:

https://www.clarkhu.net/?p=2715


------结---束------


『静谧星河』采用《署名-相同方式共享 4.0 国际》进行许可。如需转载请保留本文地址。
本文地址:
https://www.yuvin.cn/Linux/420.html

支持我

教程帮助解决方法LinuxMySql

静谧星河最后编辑于3个月前


因本站不提供交互式服务,评论均需审核后显示,敬请谅解。

添加新评论

captcha

请输入验证码