Linux之MySQL的常用基本操作

2021-09-19 20:49:28 字數 4701 閱讀 3015

原文1:

原文2:

1、顯示資料庫

- show databases;
2、選擇資料庫

- use 資料庫名;
3、顯示資料庫中的表

- show tables;
4、顯示資料表的結構

- describe 表名;
5、顯示表中記錄

- select * from 表名
6、建庫

- create databse 庫名;
7、建表

- create table 表名 (字段設定列表);

mysql> create table name

(-> id int auto_increment not null primary key ,

-> uname char(8

),-> gender char(2

),-> birthday date )

;query ok,

0 rows affected (

0.03 sec)

- mysql> show tables;-+

----

----

----

------+

| tables_in_userdb |+--

----

----

----

----

+| name |+--

----

----

----

----

+1 row in set (

0.00 sec)

mysql> describe name;+--

----

----+--

-------

+------+--

---+--

-------

+------

----

------+

| field | type | null | key | default | extra |+--

----

----+--

-------

+------+--

---+--

-------

+------

----

------+

| id |

int(11)

| no | pri |

null

| auto_increment |

| uname |

char(8

)| yes |

|null||

| gender |

char(2

)| yes |

|null||

| birthday | date | yes |

|null||

+------

----+--

-------

+------+--

---+--

-------

+------

----

------+

4 rows in set (

0.00 sec)

注: auto_increment 自增

primary key 主鍵

8、增加記錄

insert into name(uname,gender,birthday) values('張三','男','1971-10-01');
9、修改記錄

update name set birthday='1971-01-10' where uname='張三';
10、刪除記錄

delete from name where uname='張三';
11、刪除表

drop table 表名
12、刪除庫

drop database 庫名;
13、備份資料庫

mysqldump -u root -p --opt 資料庫名》備份名; //進入到庫目錄
14、恢復

mysql -u root -p 資料庫名《備份名; //恢復時資料庫必須存在,可以為空資料庫
15、資料庫授權

格式:grant select on 資料庫.* to 使用者名稱@登入主機 identified by "密碼"
例1、增加乙個使用者user001密碼為123456,讓他可以在任何主機上登入,並對所有資料庫有查詢、插入、修改、刪除的許可權。首先用以root使用者連入mysql,然後鍵入以下命令:

mysql> grant select,insert,update,delete on *.* to user001@"%" identified by "123456";
例2、增加乙個使用者user002密碼為123456,讓此使用者只可以在localhost上登入,也可以設定指定ip,並可以對資料庫test進行查詢、插入、修改、刪除的操作 (localhost指本地主機,即mysql資料庫所在的那台主機)

//這樣使用者即使用知道user_2的密碼,他也無法從網上直接訪問資料庫,只能通過mysql主機來操作test庫。

//首先用以root使用者連入mysql,然後鍵入以下命令:

mysql>grant select,insert,update,delete on test.* to user002@localhost identified by "123456";
16.使用者相關

1.建立使用者

格式:create user 'username'@'host' identified by 'password';

例如:create user 'chun'@'%' identified by 'chun';

ps:username - 你將建立的使用者名稱,

host - 指定該使用者在哪個主機上可以登陸,此處的"localhost",是指該使用者只能在本地登入,不能在另外一台機器上遠端登入,如果想遠端登入的話,將"localhost"改為"%",表示在任何一台電腦上都可以登入;也可以指定某台機器可以遠端登入;

password - 該使用者的登陸密碼,密碼可以為空,如果為空則該使用者可以不需要密碼登陸伺服器。

2.給使用者授權

命令:grant privileges on databasename.tablename to 'username'@'host'

例如:grant privileges on *.* to 'chun'@'%';

ps: privileges - 使用者的操作許可權,如select , insert , update 等(詳細列表見該文最後面).如果要授予所的許可權則使用all.;databasename - 資料庫名,tablename-表名,如果要授予該使用者對所有資料庫和表的相應操作許可權則可用*表示, 如*.*.*

3.設定與更改使用者密碼

命令:set password for 'username'@'host' = password('newpassword');

例子: set password for 'chun'@'%' = password("chun");

4.撤銷使用者許可權

命令: revoke privilege on databasename.tablename from 'username'@'host';

說明: privilege, databasename, tablename - 同授權部分.

例子: revoke select on mq.* from 'chun'@'localhost';

ps: 假如你在給使用者'dog'@'localhost''授權的時候是這樣的(或類似的):grant select on test.user to 'dog'@'localhost', 則在使用revoke select on *.* from 'dog'@'localhost';命令並不能撤銷該使用者對test資料庫中user表的select 操作.相反,如果授權使用的是grant select on *.* to 'dog'@'localhost';則revoke select on test.user from 'dog'@'localhost';命令也不能撤銷該使用者對test資料庫中user表的select 許可權.

具體資訊可以用命令show grants for 'dog'@'localhost'; 檢視.

5.刪除使用者

命令: drop user 'username'@'host';

6.檢視使用者的授權

mysql> show grants for dog@localhost;

ps:grant usage:mysql usage許可權就是空許可權,預設create user的許可權,只能連庫,啥也不能幹

linux築基之常用命令

1.檢視歷史使用的命令history 2.切換目錄 cd 桌面 cd cd 3.檢視檔案 cat小檔案 more tail f動態重新整理 搜尋檔案內容 cut d f1 etc passwd 以 為間隔符 提取第1列 wc l 行數 wc c列數 wc w單詞個數 find name fstab全...

常用的shell命令彙總,夯實Linux基礎

lscpu 檢視cpu的統計資訊 cat proc cpuinfo 檢視cpu詳細資訊,如每個cpu的型號等free m 概要檢視記憶體情況,這裡的單位是mb cat proc meminfo 檢視記憶體詳細資訊lsblk 檢視硬碟的分割槽分布,顯示很值觀 df lh 檢視各分割槽的情況 cat p...

mysql基礎測試 mysql學習筆記之基礎測試

10.基礎測試 10.1 sysbench 基準測試 10.1.1 本地安裝 2.安裝依賴包 shell yum install y automake libtool yum install y mysql devel 3.執行安裝 shell cd sysbench autogen.sh conf...