[转]mysql日常工作手记

1、 给navy加show权限:

1
2
update mysql.user set Show_db_priv='Y'  where user='navy';
flush privileges;

2、查询服务器系统变量值:

1
mysqladmin -h 127.0.0.1 -uroot -p123456 --sock=logs/mysql.sock variables

3、显示服务器所有运行的进程(5s刷新一次):

1
mysqladmin -h 127.0.0.1 -uroot -p123456 --sock=logs/mysql.sock -i 5 processlist

4、重载权限信息:

1
mysqladmin -uroot -p reload

5、mysqladmin 执行kill 进程:

1
./bin/mysqladmin -h 127.0.0.1 -uroot -pking+5688 --sock=logs/mysql.sock kill 610(610为processlist看到的sql ID号)

6、导出数据库navy2:

1
./bin/mysqldump -h 127.0.0.1 -P 3307   --sock=logs/mysql.sock navy2 > /data/navy2.sql

7、导出数据库navy2中的test表:

1
./bin/mysqldump -h 127.0.0.1 -P 3307  --sock=logs/mysql.sock navy2 test >/data/test.sql

8、导入数据库navy2.sql到navy1数据库:

1
2
./bin/mysql -h 127.0.0.1 -uroot -pking+5688   --sock=logs/mysql.sock navy1 < /data/navy2.sql(方法一)
use navy1;source /data/navy2.sql(方法二)

9、MYISAM VS INNODB:

1
2
MyisAM :支持全文索引,压缩索引,键值分离,一般用在读上面
InnoDB: 支持事务,键值在一起被缓存在innodb缓存池里,一般用在写或读写

10、mysql清理binlog:

1
2
mysql>show binary logs;
mysql>purge binary logs to 'mysql-bin.000055';  从最原始清理到这个点

11、重新生成一个二进制日志文件

1
flush logs;

12、看你的mysql现在已提供什么存储引擎:

1
mysql> show engines;

13、查看你的mysql当前默认的存储引擎:

1
mysql> show variables like '%storage_engine%';

14、字符集相关:

1
2
3
4
5
6
查看数据库的字符集:
show variables like 'character%';
修改数据库的字符集:
alter database mydb character set utf8;
创建数据库时指定字符集:
create database mydb character set utf8;

15、锁表(只读,不可写)

1
flush tables with read lock;

16、解锁

1
unlock tables;

17、主从同步相关:

1
2
3
4
5
6
7
8
9
10
查看master的binlog信息
show master status\G
查看同步信息
show slave status\G
选择同步点,主库ip是192.168.0.117,端口3307,同步账号slave,密码123456,主库binlog文件mysql-bin.000067,偏移点107
change master to master_host='192.168.0.117', master_Port=3307, master_user='slave', master_password='123456', master_log_file='mysql-bin.000067', master_log_pos=107;
创建账号slave,密码123456,权限“replication slave”,开放ip是192.168.0.119的账号
grant replication slave on *.* to slave@192.168.0.119 identified by "123456";
删除账号
drop user slave@192.168.0.119;

18、从库跳过一条binlog(需要先slave stop;)

1
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=1;

19、导出binlog文件到定义文件6.sql

1
mysqlbinlog mysql-bin.000006 > /data/sql_bak/6.sql

20、修改mysql的root密码(密码忘记)

1
2
3
4
5
6
7
8
9
1.kill掉系统里的mysql进程  (ps | grep mysqld)
2.用以下命令启动mysql,以不检查权限的方式启动
/usr/local/mysql/bin/mysqld_safe --skip-grant-tables &
3.然后用空密码方式使用root用户登录mysql
mysql -u root
4.修改root用户的密码:
mysql> update mysql.user set password=PASSWORD('310126')where User='root';
mysql> quit
5.重新启动mysql,就可以用新密码登录了

21、新开库需要开的权限:

1
2
3
4
5
grant select,insert,update,delete on newdatabase.* to newdatabase_pro@'10.10.0.%' Identified by "123456“;(应用程序连的用户)
grant all on newdatabase.* to newdatabase@10.10.0.100 Identified by "123456";(管理员用户)
grant replication slave on *.* to slave@10.10.0.10 identified by "123456";(主从复制用户)
grant replication client on *.* to repl_cli@'192.168.0.%' identified by "123456";(监控用户)
flush privileges;(刷新权限)

 

http://navyaijm.blog.51cto.com/

posted @ 2013-07-08 17:21  穆晟铭  阅读(299)  评论(0编辑  收藏  举报