Mysql常见应用操作

导出整个数据库结构和数据:mysqldump -u用户名 -p密码 -h主机 database > filename.sql
导出某个表的数据和结构:mysqldump -u用户名 -p密码 -h主机 database table > filename.sql
只导出数据库中表的数据:mysqldump -u用户名 -p密码 -h主机 -t database table > filename.sql
只导出数据库中表的结构:mysqldump -u用户名 -p密码 -h主机 -d database table > filename.sql
 
创建用户
语法:
Grant ALL PRIVLEGES ON 数据库名.表名 TO 用户名@'IP' IDENTIFILED BY '用户密码' WITH GRANT OPTION;
GRANT ALL PRIVILEGES ON www_xxxxx_com_db.* TO xxxx@'%' IDENTIFIED BY 'xxxxxxxx' WITH GRANT OPTION; 
GRANT ALL PRIVILEGES ON xxx.* TO admin@'192.168.1.%' IDENTIFIED BY 'xxxx' WITH GRANT OPTION;
GRANT SELECT  ON xxxx.* TO admin@'192.168.1.%' IDENTIFIED BY 'xxxx' WITH GRANT OPTION;
 
用于备份,给予最小权限
grant select,lock tables on *.* to 'dbbak'@'localhost' identified by 'xxxx'; 
 
修改root密码:
1、use mysql; update user set password=PASSWORD('123456') where user='root';
2、mysqladmin -uroot password '123456'
以上注意在使用update后,需要进一步输入flush privileges;语句,否则修改密码命令操作不会生效,如果需要设置Mysql的root密码为空,则不需要使用PASSWORD函数
3、mysql> set password for 'root'@'localhost'=PASSWORD('leapsoulcn');
使用set password命令时也需要使用PASSWORD函数,但不需要flush privileges;即可使修改密码的命令操作生效。使用set password命令修改root密码时请务必操作谨慎,容易出错导致无法登陆,
 
 
将mysql的查询结果保存到文件中
mysql> select *  into outfile "文件路径" from table;
 
将文件导入mysql数据库
msyql>load data infile "文件路径" into table tablename;
导入数据至数据库中:mysql -u用户名 -p密码 -h主机 database < sql文件
 
更改表字段操作
ALTER TABLE `blackinfo` CHANGE `blackname` `blackname` char(32) CHARACTER SET utf8 DEFAULT NULL COMMENT '黑名单姓名' COLLATE utf8_unicode_ci NOT NULL; 
 
 
mysql命令行下:
truncate table 表名 : 清空此表的数据
drop table 表名:删除此表
show create table 表名:查看此表的创建信息
alter table 表名 engine=InnoDB  修改此表的引擎为InnoDB
 
删除mysql
mysql> delete from user where user='';
Query OK, 2 rows affected (0.02 sec)
 
mysql> flush privileges;
mysql >exit
mysql> mysqladmin   reload   /-*进行权限的重载*-/ 
 
赋予mysql用户超级权限
grant super on *.* to admin@'%' identified by '123456';
 
CREATE USER 'z'@'%' IDENTIFIED BY '123456';
GRANT super on *.* TO 'z'@'%';
GRANT CREATE, INDEX, ALTER, LOCK TABLES, EXECUTE, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON acc.* TO 'z'@'%';
flush privileges;
 
将一个表的内容插入到另一个表中:
insert into table2 select * from table1 
insert ignore into table2 select * from table1 忽略冲突的键值,比如:修复坏表
 
select `name` from mysql.proc where db = 'xxxxxx' and `type` = 'PROCEDURE' limit  5\G
update mysql.event set definer='admin@%' where db='xxxxx‘;
show events\G
show procedure status; 
update mysql.proc  set  definer='admin@%'  where db = 'xxxxxxxx' and `type` = 'PROCEDURE';
select * from  information_schema.VIEWS limit 4\G
show triggers\G
show function status\G

你可能感兴趣的:(职场,Mysql命令,休闲,mysql常用命令)