MySQL小笔记

逻辑备份:

mysqldump -u root -p shujuku > /backup/shujuku.dump#备份shujuku数据库

mysqldump -u root -p --default-character-set=latin1 shujuku > /backup/shujuku.dump#备份shujuku数据库 ,并指定客户端字符集,不指定则为系统默认的客户端字符集,如果数据库的字符集与客户端字符集不同,数据库在导出时就会进行字符集转换,将数据库字符集转换为客户端字符集,经过转换后的数据可能会乱码,使得备份文件无法恢复。

mysql --verbose --help|grep 'default-character-ser'|grep -v name#查看系统默认的客户端字符集

mysqldump -u root -p -l -F shujuku > /backup/shujuku.dump#备份shujuku数据库,-l:所有表加读锁,-F:生成新的日志文件

mysqldump -u root -p --all-databases > /backup/alldatabases.dump备份所有数据库

mysql -u root -p shujuku </backup/shujuku.dump#恢复shujuku数据库

mysqldump -u root -p shujuku |gzip> /backup/shujuku.dump.gz#压缩备份shujuku数据库,可以节约空间

gunzip <  /backup/shujuku.dump.gz | mysql -u root -p shujuku #恢复shujuku数据库

 

修改密码:

mysql> update user set password=password("123456") where user='root';
mysql> flush privileges //刷新数据库

 

 

授权:

mysql>drop database  zabbix;

mysql> create database  zabbix;

mysql>grant  ALL PRIVILEGES  on  zabbix.*   to zabbix@192.168.1.10  identified by "123456";

mysql>grant  select   on zabbix.*   to zabbix@'%'   identified by "123456";

mysql>grant  select   on zabbix.*   to zabbix@'127.0.0.1'  identified by "123456";

mysql>GRANT ALL PRIVILEGES ON  . TO  zabbix@localhost IDENTIFIED BY 'something'  WITH  GRANT OPTION;

 

 

删除授权:

mysql的权限命令是grant,权限撤销的命令时revoke;
grant授权格式:grant 权限列表 on 库.表 to 用户名@'ip' identified by "密码";
revoke回收权限格式:revoke 权限列表 on 库.表 from 用户名@'ip';

mysql> revoke all privileges on *.* from zabbix@'localhost'

mysql> revoke all privileges on *.* from zabbix@'%'

mysql> delete from user where user="root" and host="%";
mysql> flush privileges;

 

删除表中数据:
命令:delete from 表名 where 表达式
delete只删数据,不清痕迹;trancate既删数据,又清痕迹,将主键自增的值初始为1。。
例如:删除表 MyClass 中编号为 1 的记录
mysql>delete from MyClass where id=1;删除表中的数据
mysql>delete from MYTABLE;#删除所有数据
mysql>truncate MyClass#删除所有数据

 

 

修改表中数据:
update 表名 set 字段=新值,… where 条件
mysql> update MyClass set name='Mary' where id=1;

更改表名:
命令:rename table 原表名 to 新表名;
例如:在表 MyClass 名字更改为 YouClass
mysql> rename table MyClass to YouClass;
更新字段内容
update 表名 set 字段名 = 新内容
update 表名 set 字段名 = replace(字段名,'旧内容','新内容');

 

 

删除表:
mysql>drop TABLE MYTABLE;#删除表

 

 

建库建表:
drop database if exists zabbix; #如果存在zabbix则删除
create database zabbix; #创建库zabbix
use zabbix; #打开库zabbix
create table mytable #建立表 TEACHER
(
id int(3) auto_increment not null primary key,
name char(10) not null,
address varchar(50) default '哈哈',
year date
); #建表结束
#以下为插入字段
insert into mytable values('','aaaaaa','搜索','2010-09-10');
insert into mytable values('','bbbb','哈哈','2010-09-19');

 

posted @ 2019-08-25 21:02  shangshanyang  阅读(169)  评论(0编辑  收藏  举报