1. 忘记root密码
编辑mysql主配置文件 my.cnf 在[mysqld]字段下添加参数 skip-grant ,重启数据库服务,这样就可以进入数据库不用授权了 mysql -uroot ,修改相应用户密码 use mysql; update user set password=password('your password') where user='root';flush privileges; 最后修改/etc/my.cnf 去掉 skip-grant , 重启mysql服务
2. skip-innodb 我们可以增加这个参数不使用innodb引擎。
3. 配置慢查询日志
#log_slow_queries = /path/to/slow_queries
#long_query_time = 1
4. mysql常用操作
登陆mysql方法,可以用IP或者socket
IP:mysql -uroot -p123456 -h127.0.0.1 -P3306 #-P 是mysql监听端口
socket : mysql -uroot -p123456 -S /tmp/mysql.socket #-S 是socket的路径
查看都有哪些库 show databases;
进入某个库 use db;
查看库里有哪些表 show tables;
查看表的字段 desc tb;
查看建表语句 show create table tb;
查看当前是哪个用户 select user();
查看当前库 select database();
创建库 create database db1;
创建表 create table t1 (`id` int(4), `name` char(40));
填写表insert into tb1 (id,name) values(1,'aming');
查看表的内容 select * from tb;
查看数据库版本 select version();
查看mysql状态 show status;
修改mysql参数 show variables like 'max_connect%'; set global max_connect_errors = 1000; # 百分号%表示通配符; set global 是在不重启mysql情况下修改配置,重启后会恢复,永久生效改my.cnf
查看mysql队列 show processlist;
创建普通用户并授权,同时设置密码
grant all on *.* to user1 identified by '123456';
grant all on db1.* to 'user2'@'10.0.2.100' identified by '111222';
grant all on db1.* to 'user3'@'%' identified by '231222';
更改密码 update mysql.user set password=password("newpwd") where user='username' ; flush privileges; #修改密码后要刷新
查询 select count(*) from mysql.user; select * from mysql.db; select * from mysql.db where host like '10.0.%';
插入 update db1.t1 set name='aaa' where id=1;
清空表 truncate table db1.t1;
删除表 drop table db1.t1;
删除数据库 drop database db1;
修复表 repair table tb1 [use_frm];
5. mysql备份与恢复
备份 mysqldump -uroot -p123456 db >1.sql
恢复 mysql -uroot -p123456 db <1.sql
只备份一个表 mysqldump -uroot -p123456 db tb1 > 2.sql
阅读(522) | 评论(0) | 转发(0) |