日韩av黄I国产麻豆传媒I国产91av视频在线观看I日韩一区二区三区在线看I美女国产在线I麻豆视频国产在线观看I成人黄色短片

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

linux复盘:mysql基础

發(fā)布時間:2025/7/14 79 豆豆
生活随笔 收集整理的這篇文章主要介紹了 linux复盘:mysql基础 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

2019獨角獸企業(yè)重金招聘Python工程師標準>>>

mysql常用命令

修改路徑修改密碼

/usr/local/mysql/bin/mysql -uroot #進入mysql

vim /etc/profile

PATH=$PATH:/usr/local/mysql/bin #最后加上

source /etc/profile

source命令也稱為“點命令”,也就是一個點符號(.),是bash的內部命令。

功能:使Shell讀入指定的Shell程序文件并依次執(zhí)行文件中的所有語句

source命令通常用于重新執(zhí)行剛修改的初始化文件,使之立即生效,而不必注銷并重新登錄。

mysql -uroot mysqladmin -uroot password '123456' #修改密碼 mysql -uroot -p'123456' #-p后面不能有空格,密碼可以不帶單引號,但是如果有特殊字符時會出現(xiàn)問題#忘記密碼怎么辦,有的是辦法 vi /etc/my.cnf [mysqld] skip-grant #忽略授權選項,平時生產(chǎn)中不要添加/etc/init.d/mysqld restart #這樣就不用進入數(shù)據(jù)庫的授權了,可以修改密碼了 mysql -uroot use mysql; update user set password=password('aminglinux') where user='root'; flush privileges; #修改完mysql庫的密碼后,再次編輯/etc/my.cnf/把增加的skip-grant刪掉 #不刪掉的話就可以不用密碼進入任何庫了,非常危險我們需求只是修改mysql庫的密碼

?連接mysql

mysql -uroot -p123456 #此方式只能連接本地數(shù)據(jù)庫localhost,但很多時候都需要連接網(wǎng)絡中某一個主機上的mysql mysql -uroot -p123456 -h127.0.0.1 -P3306 #-h指定遠程主機的IP,-P(后面的)指定遠程主機mysql的綁定端口,默認為3306 mysql -uroot -p123456 -S/tmp/mysql.sock #-S:=socket,指定socket。此方法只適用于本地連接,等同于“mysql -uroot -p123456” mysql -uroot -p123456 -e “show databases” #顯示所有數(shù)據(jù)庫,適用于shell腳本中

mysql常用命令

庫由表組成,表由字段組成 查詢庫 show databases; 切換到mysql庫 use mysql;以下命令需要切換庫之后執(zhí)行: 查看庫里的表 show tables; 查看表里的字段 desc tb_name; 查看建表語句 show create table tb_name\G; 查看當前是哪個用戶 select user(); 查看當前使用的數(shù)據(jù)庫 select database();查看所有用戶 select * from user\G; 創(chuàng)建一個新庫 create database db_name; 創(chuàng)建一個新表t1 create table t1(`id` int(4),`name` char(40)); 查看當前數(shù)據(jù)庫版本 select version(); 查看mysql當前狀態(tài) show status; 查看所有參數(shù) show variables; 查看某參數(shù) show variables like 'max_connect%'; 修改參數(shù) set global max_connect_errors=1000; 查看mysql進程隊列 show processlist; (用的最多的地方) 查看隊列詳細信息show full processlist; 刪除庫 drop database db_name 刪除表 drop table tb_name #查看服務器隊列在日常工作中最為頻繁,因為它可以查看當前mysql在干什么,也可以發(fā)現(xiàn)是否有鎖表

用戶授權管理

創(chuàng)建一個普通用戶并授權 grant all on *.* to 'user1' identified by 'passwd'; 創(chuàng)建后指定登錄IP grant all on *.* to 'user1'@'127.0.0.1' identified by '123456a'; #創(chuàng)建user1用戶all表示所有的權限,并授予其所有權限“*.*”(通配符) #第一個*表示db_name(所有的數(shù)據(jù)庫);第二個*表示tb_name(所有的表) #同時指定其來源IP127.0.0.1(即,只可通過此IP登錄) #此處可以使用通配符%,代表所有IP(一般不使用) #設定密碼:identified by用戶登錄:使用IP登錄 mysql -uuser1 -p123456 -h127.0.0.1創(chuàng)建后指定登錄socket(這里不太清楚后面注意) grant all on *.* to 'user2'@'localhost' identified by '123456'; 用戶的登錄使用socker登錄 mysql -uuser2 -p'123456' #指定登錄主機為localhost,所以該用戶默認使用(監(jiān)聽)本地mysql.socket文件,不需要指定IP即可登錄。 對具體權限進行授權: create database db1; #創(chuàng)建一個新庫db1 grant SELECT,UPDATE,INSERT on db1.* to 'user2'@'192.168.133.1' identified by 'passwd'; #創(chuàng)建user2用戶,并授予其針對db1庫SELECT,UPDATE,INSERT權限 grant all on db1.* to 'user3'@'%' identified by 'passwd';show grants; #創(chuàng)建user3,并針對所有IP授予其db1庫所有權限 #用戶和主機用@分割,主機IP用%代替表示所有主機show grants; #查詢當前用戶權限 show grants for user2@192.168.133.1; #查看指定用戶權限

常用sql語句

select count(*) from mysql.user; #查看指定庫的行數(shù),musql.user表示mysql庫的user表,count(*)表示共有多少行 select * from mysql.db; #查詢庫的所有內容 select db from mysql.db; select db,user from mysql.db; #查看庫指定內容,db表的所有內容 select * from mysql.db where host like '192.168.%'; #查看某些IP對應的庫內容,like表示匹配 insert into db1.t1 values (1, 'abc'); #向表中插入內容 update db1.t1 set name='aaa' where id=1; #更改表的某一行 truncate table db1.t1; #清空一個表中內容 drop table db1.t1; #刪除表 drop database db1; #刪除庫

數(shù)據(jù)備份恢復

當數(shù)據(jù)庫量小的時候用可以,如果量大了就需要用其他的備份方法備份:

備份指定庫? mysqldump -uroot -p123456 mysql > /tmp/mysql.sql備份所有庫 mysqldump -uroot -p123456 -A > /tmp/mysql.sql恢復庫 mysql -uroot -p123456 mysql < /tmp/mysql.sql備份指定表 mysql -uroot -p123456 mysql user > /tmp/user.sql只備份表結構 mysqldump -uroot -p123456 -d mysql > /tmp/mysql.sql恢復表 mysql -uroot -p123456 mysql user < /tmp/user.sql

?

轉載于:https://my.oschina.net/u/3655649/blog/1612719

總結

以上是生活随笔為你收集整理的linux复盘:mysql基础的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內容還不錯,歡迎將生活随笔推薦給好友。