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;(刷新权限) |