1.加索引
ALTER TABLE `table_name` ADD INDEX index_name ( `column` )
2.重命名表
RENAME TABLE user11 TO user10;
3.用命令导出带条件的sql语句
一般来讲,我们用mysqldump命令,都是用来备份整张表,或整个db的,其实mysqldump还有一个参数,就是--where 指定条件,这样我们就可以对一张表里的某些符合条件的数据,进行备份,导出.sql文件了
cd /usr/local/mysql/bin
./mysqldump -u root -p diot --no-create-db=TRUE --no-create-info=TRUE --add-drop-table=FALSE --where=" data_time >= '2019-07-01 00:00:00' and data_time <='2019-07-01 23:59:59' " smp_equip_realtimedata >myexport.sql;
模板:
mysqldump -u root -p DB_Name --no-create-db=TRUE --no-create-info=TRUE --add-drop-table=FALSE --where="id>1000" Table_Name>导出文件名.sql;
4.NOT EXISTS
以下语句为找出在smp_equipment 中有,在smp_equipment_small中没有的数据,两个表的主键为id.
select a.* from smp_equipment a where NOT EXISTS(select * from smp_equipment_small b where b.id=a.id)
5.创建用户
--创建了一个名为:test 密码为:1234 的用户
create user 'test'@'localhost' identified by '1234';
赋权限
--授予用户test通过外网IP对数据库“testdb”的全部权限
grant all privileges on 'testdb'.* to 'test'@'%' identified by '1234';
--刷新权限
flush privileges;
--授予用户“test”通过外网IP对于该数据库“testdb”中表的创建、修改、删除权限,以及表数据的增删查改权限
grant create,alter,drop,select,insert,update,delete on testdb.* to test@'%';
2.查询用户
--查询用户
select user,host from mysql.user;
3.删除用户
--删除用户“test”
drop user test@localhost ;
--若创建的用户允许任何电脑登陆,删除用户如下
drop user test@'%';
4.更改密码
--方法1,密码实时更新;修改用户“test”的密码为“1122”
set password for test =password('1122');
--方法2,需要刷新;修改用户“test”的密码为“1234”
update mysql.user set password=password('1234') where user='test'
--刷新
flush privileges;
6.查看用户权限
--查看用户“test”
show grants for test;
7.给已经建好的表加上唯一性约束
ALTER TABLE `t_user` ADD unique(`username`);