13.1 設置更改root密碼
13.2 鏈接mysql
13.3 mysql經常使用命令
13.4 mysql用戶管理
13.5 經常使用sql語句
13.6 mysql數據庫備份恢復
使用xtrabackup備份innodb引擎的數據庫 innobackupex 備份 Xtrabackup 增量備份 http://zhangguangzhi.top/2017/08/23/innobackex%E5%B7%A5%E5%85%B7%E5%A4%87%E4%BB%BDmysql%E6%95%B0%E6%8D%AE/#%E4%B8%89%E3%80%81%E5%BC%80%E5%A7%8B%E6%81%A2%E5%A4%8Dmysql
相關視頻
連接:http://pan.baidu.com/s/1miFpS9M 密碼:86dx
連接:http://pan.baidu.com/s/1o7GXBBW 密碼:ue2f
擴展
mysql5.7 root密碼更改 http://www.apelearn.com/bbs/thread-7289-1-1.html
myisam 和innodb引擎對比 http://www.pureweber.com/article/myisam-vs-innodb/
mysql 配置詳解: http://blog.linuxeye.com/379.html
mysql調優: http://www.aminglinux.com/bbs/thread-5758-1-1.html
同窗分享的親身mysql調優經歷: http://www.apelearn.com/bbs/thread-11281-1-1.html
SQL語句教程 http://www.runoob.com/sql/sql-tutorial.html
什麼是事務?事務的特性有哪些? http://blog.csdn.net/yenange/article/details/7556094
根據binlog恢復指定時間段的數據 https://blog.csdn.net/lilongsy/article/details/74726002
mysql字符集調整 http://xjsunjie.blog.51cto.com/999372/1355013html
筆記:mysql
mysql特性、趨勢http://www.javashuo.com/article/p-zmurcxoy-br.htmllinux
https://downloads.mariadb.org/web
主從:關鍵詞GTID http://www.javashuo.com/article/p-dztgsawh-k.htmlsql
http://www.javashuo.com/article/p-eexealuq-cq.htmlshell
http://www.javashuo.com/article/p-oiyqmdti-bc.html數據庫
mysql 參數調整http://isky000.com/database/mysql-perfornamce-tuning-cache-parametervim
1、設置更改root密碼服務器
ps aux |grep mysql 看mysql是否啓動ide
ls /usr/local/mysql/bin/mysql 命令所在目錄,可是此目錄並無在環境變量中
echo $PATH
1. 把mysql命令加入環境變量PATH,更改環境變量PATH,增長mysql絕對路徑
vim /etc/profile 在最後加入:
export PATH=$PATH:/usr/local/mysql/bin/
2. 重啓服務/從新加載profile文件
/etc/init.d/mysqld restart source /etc/profile
3. 設置root密碼
mysqladmin -uroot password 'tobe' //單引號可加可不加,但有特殊字符最好加上,-u指定用戶 mysql -uroot -p //-p選項後面可跟密碼( mysql -uroot -pmysql),也可不跟密碼,不跟密碼是交互式登陸
更改密碼
若是知道root密碼,可使用mysqladmin直接更改密碼
mysqladmin -uroot -p'mysql' password 'tobe'
若是不知道root密碼,須要按以下方法重置mysql密碼
1.在/etc/my.cnf配置文件裏添加 skip-grant,意思是忽略受權
/etc/init.d/mysqld restart 重啓服務
2.mysql -uroot 進入到庫,不須要使用密碼,直接登陸 3.use mysql 選擇庫,密碼存在該庫中 4.update user set password=password('tobe123') where user='root'; 更改密碼 5.編輯/etc/my.cnf,取消skip-grant 6./etc/init.d/mysqld restart 重啓mysql服務
2、鏈接mysql
1. 鏈接本地的數據庫
mysql -uroot -ptobe123
2.遠程鏈接
mysql -uroot -ptobe123 -h127.0.0.1 -P3306 // -P指定端口 -h指定host(IP)
3.經過sock鏈接
mysql -uroot -ptobe123 -S/tmp/mysql.sock //-S指定sock文件,只適合在本機使用
4.鏈接mysql後運行命令(多數使用在shell腳本里)
mysql -uroot -ptobe123 -e "show databases" //-e查看都有什麼數據庫,引號中的命令能夠更改
3、mysql經常使用命令
庫是由表組成的。表由字段組成的 庫---表--字段
mysql的命令歷史記錄在.mysql_history
查詢庫 show databases; 切換庫 use mysql; 查看庫裏的表 show tables; 查看錶裏的字段 desc tb_name; //tb_name爲表名 查看建表語句 show create table tb_name\G; \G表示豎排顯示 查看當前用戶 select user(); 查看當前使用的數據庫 select database();
在命令前加#便可註釋,命令不生效
建立庫 create database tobe; 建立表 先選擇庫 use tobe; create table t1(`id` int(4), `name` char(40)); t1爲表名,id、name爲字段,int爲num格式最長4,char字符串格式最長40 create table t1(`id` int(4), `name` char(40)) ENGINE=InnoDB DEFAULT CHARSET=utf8; 建表時設置字符集爲utf8 刪除表 drop table t1;
查看當前數據庫版本 select version(); 查看數據庫狀態 show status; 查看mysql的參數,這些參數也能夠再/etc/my.cnf定義 show variables; 也能夠指定查找 show variables like 'max_connect%'; %表示通配,當不記得字母可使用這個
修改mysql參數 set global max_connect_errors=1000; global只是臨時修改,要永久生效須要去配置文件添加vim /etc/my.cnf
查看當前mysql服務器的隊列 能夠查看當前mysql在幹什麼,也能夠發現是否有鎖表 show processlist; show full processlist; 完整查看(能夠看到info這裏顯示比較完整)
4、mysql用戶管理
建立用戶:
grant :受權 ,all:全部的權限 *.* 表示容許操做那些庫和表,庫(.前面的*是庫)和表(.後面的*)用.分開
grant all on *.* to 'user1' identified by 'user1';
grant all on *.* to 'user2'@'127.0.0.1' identified by '123456'; 須要使用-h指定ip才能夠鏈接
grant all on *.* to 'user3'@'localhost' identified by '123456'; localhost針對sock鏈接,不須要使用-h
建立用戶且只能使用SELECT,UPDATE,INSERT命令和操做db1庫,@後面指定來源IP
grant SELECT,UPDATE,INSERT on db1.* to 'user2'@'localhost' identified by 'user2';
建立用戶使用所有命令和所有庫,任何機器均可以鏈接 %表示所有來源IP
grant all on *.* to 'user2'@'%' identified by 'user2';
查看用戶權限;
show grants; 只能查看當前登陸用戶的權限,複製用戶時會用到
查看其它用戶權限
show grants for user1;
若是有指定IP的用戶須要加上@後面跟指定的IP
show grants for user2@127.0.0.1;
5、經常使用sql語句
查詢語句;
count(*)表示表中有幾行 mysql.user :表示查詢mysql庫中的user表
select count(*) from tobe.t1; 查詢tobe庫中的t1表有多少行
查詢表中的全部數據
tobe.t1:表示查詢mysql庫中的user表 *表示全部數據
select * from tobe.t1\G;
查詢指定字段的數據,能夠指定多個字段查詢數據
select id,name from tobe.t1;
插入一行數據:
use tobe; 切換到tobe庫 insert into t1 values (1,'abc'); 插入一行數據 select * from t1;
更改表中數據
update t1 set id='123' where name='two';
清空表中數據,表中結構保留
truncate table tobe.t1;
desc查看字段,能夠看到只清空了表的數據,結構仍是保留了
desc tobe.t1;
刪除表:
show tables; 查詢當前庫的表 drop table tobe.t1; 刪除表
刪除庫;
show databases; 查詢當前全部庫 drop database tt; 刪除庫
7、mysql數據庫備份恢復
備份庫 mysqldump -uroot -ptobe tobe > /tmp/tobebal.sql 備份tobe庫到tmp目錄更名爲sql後綴
建立一個新的庫tt2,進行恢復
恢復庫 mysql -uroot -ptobe tt2 < /tmp/tobebal.sql
tobe 庫名 t2表名
備份表 mysqldump -uroot -ptobe tobe t2 > /tmp/t2.sql 恢復表 mysql -uroot -ptobe tobe < /tmp/t2.sql 備份全部庫 mysqldump -uroot -ptobe -A > /tmp/123.sql 只備份表結構 mysqldump -uroot -ptobe -d tobe > /tmp/tobe1.sql