1.mysqlbinlog工具使用方法以下:
php
先使用 show binary logs 查看html
在使用導出命令mysql
mysqlbinlog -R -uroot -pxxxx -hxxx.xxx.xxx.xxx -d db_name --base64-output=decode-rows --start-datetime='2015-08-13 13:11:21' --stop-datetime="2015-08-13 13:18:21" mysql-bin.000008 > mysql-bin.ran_trade_08_13.sql
2.mysqldump使用方法以下:sql
# 備份單個數據庫 mysqldump -u 用戶名 -p 數據庫名 > 導出的文件名 # 備份全部數據庫 mysqldump -u用戶名 -p --all-databases > /tmp/bak.sql
3.修改root帳戶密碼數據庫
mysqladmin -u root password "new password"
4.爲特定用戶賦予和收回權限vim
#賦予權限 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; GRANT select,insert,update,delete ON *.* TO 'pig'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION; FLUSH PRIVILEGES; #收回權限 REVOKE ALL PRIVILEGES ON *.* FROM pig; FLUSH PRIVILEGES;
PS: 權限包括 select,insert,update,delete,create,drop,index,alter,grant,references,reload,shutdown,process,filebash
5.Mysql服務器開啓遠程鏈接服務器
1)開啓對應帳號的遠程訪問權限工具
$ mysql -uroot -p mysql > use mysql; mysql > update user set host = '%' where user = 'root'; mysql > flush privileges;
若是在執行update的時候報錯 "ERROR 1062 (23000): Duplicate entry '%-root' for key 'PRIMARY'", 解決辦法spa
SELECT Host,User from user \G;
將重複的刪除掉
2)開啓服務容許遠程鏈接 編輯文件 /etc/mysql/my.conf
$ vim /etc/mysql/my.conf #找到bind-address註釋掉這行 $ /etc/init.d/mysql restart #重啓mysql服務
6.新建數據庫用戶
CREATE USER 'pig'@'%' IDENTIFIED BY '123456'; CREATE USER 'pig'@'localhost' IDENTIFIED BY '123456';
7.查看錶的大小
SELECT TABLE_NAME,( (DATA_LENGTH+INDEX_LENGTH)/1024/1024 ) as tb_szie,TABLE_ROWS FROM information_schema.TABLES WHERE TABLE_SCHEMA='db_name' order by tb_szie desc;
8. 修改數據庫默認時間
最近發現數據庫有個字段的時間是晚8個小時的,發現數據庫的時間不對
更改mysql的配置文件(mysql.cnf) 在my.cnf的 [mysqld]區域中加上 default-time_zone = '+8:00' #此爲北京時
9.重置root密碼
當忘記root帳號密碼時,不要急,在 /etc/mysql/my.cnf 的[mysqld]下面增長一段
skip-grant-tables
而後 重啓服務
sudo /etc/init.d/mysql restart
而後直接輸入mysql 命令進去