關註上方 浩道Linux ,回復 資料 ,即可獲取海量 L inux 、 Python 、 網路通訊、網路安全 等學習資料!
前言
大家好,這裏是 浩道Linux ,主要給大家分享 L inux 、 P ython 、 網路通訊、網路安全等 相關的IT知識平台。
今天浩道跟大家分享Mysql資料庫運維硬核幹貨,一序列實用運維指令碼給大家送上,記得收藏好,掌握好這些指令碼,你會快人一等的!
文章來源:https://cdn.modb.pro/db/217710
常用功能指令碼
1.匯出整個資料庫
mysqldump -u 使用者名稱 -p –default-character-set=latin1 資料庫名 > 匯出的檔名(資料庫預設編碼是latin1)
mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql
2.匯出一個表
mysqldump -u 使用者名稱 -p 資料庫名 表名> 匯出的檔名
mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql
3.匯出一個資料庫結構
mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:wcnc_db.sql
-d 沒有數據 –add-drop-table 在每個create語句之前增加一個droptable
4.匯入資料庫
A:常用source 命令
進入mysql資料庫控制台,
如mysql -u root -p
mysql>use 資料庫
然後使用source命令,後面參數為指令碼檔(如這裏用到的.sql)
mysql>source wcnc_db.sql
B:使用mysqldump命令
mysqldump -u username -p dbname < filename.sql
C:使用mysql命令
mysql -u username -p -D dbname < filename.sql
啟動與結束
1、進入MySQL:啟動MySQL Command Line Client(MySQL的DOS界面),直接輸入安裝時的密碼即可。此時的提示符是:mysql>
2、結束MySQL:quit或exit
庫操作
1、、建立資料庫
命令:create database <資料庫名>
例如:建立一個名為sqlroad的資料庫
mysql> create database sqlroad ;
2、顯示所有的資料庫
命令:show databases (註意:最後有個s)
mysql> show databases;
3、刪除資料庫
命令:drop database <資料庫名>
例如:刪除名為 sqlroad 的資料庫
mysql> drop database sqlroad ;
4、連線資料庫
命令:use <資料庫名>
例如:如果 sqlroad 資料庫存在,嘗試存取它:
mysql> use sqlroad ;
螢幕提示:Database changed
5、檢視當前使用的資料庫
mysql> select database();
6、當前資料庫包含的表資訊:
mysql> show tables; (註意:最後有個s)
表操作,操作之前應連線某個資料庫
1、建表
1
命令:create table <表名> ( <欄位名> <型別> [,..<欄位名n> <型別n>]);
2
3
mysql> create table My class(
4
5
> id
int
(
4
)
not
null
primary key auto_increment,
6
7
> name char(
20
)
not
null
,
8
9
> sex
int
(
4
)
not
null
default
’′,
10
11
> degree double(
16
,
2
));
2、獲取表結構
1
命令:desc 表名,或者show columns
from
表名
2
3
mysql>DESCRIBE
My class
4
5
mysql> desc
My class
;
6
7
mysql> show columns
from
My class
;
3、刪除表
1
命令:
drop
table
<表名>
2
3
例如:刪除表名為 My class 的表
4
5
mysql>
drop
table
My class;
4、插入數據
1
命令:
insert
into
<表名>
[( <欄位名>[,..<欄位名n> ]
)]
values
( 值 )
[, ( 值n )]
2
3
例如,往表
My class
中插入二條記錄, 這二條記錄表示:編號為的名為
Tom
的成績為
.45
, 編號為 的名為
Joan
的成績為
.99
,編號為 的名為
Wang
的成績為
.5
.
4
5
mysql
>
insert
into
My class
values
(1,’
Tom
’,96
.45
),(2,’
Joan
’,82
.99
), (2,’
Wang
’, 96
.59
);
5、查詢表中的數據
1
1
)、查詢所有行
2
3
命令:
select
<欄位,欄位,...>
from
< 表名 >
where
< 運算式 >
4
5
例如:檢視表
My class
中所有數據
6
7
mysql>
select
*
from
My class
;
8
9
2
)、查詢前幾行數據
10
11
例如:檢視表
My class
中前行數據
12
13
mysql>
select
*
from
My class
order
by
id limit
0
,
2
;
14
15
或者:
16
17
mysql>
select
*
from
My class
limit
0
,
2
;
6、刪除表中數據
1
命令:
delete
from
表名
where
運算式
2
3
例如:刪除表 My class中編號為 的記錄
4
5
mysql>
delete
from
My class
where
id
=
1
;
7、修改表中數據:update 表名 set 欄位=新值,…where 條件
1
mysql>
update My class
set
name=’Mary’
where
id=1;
8、在表中增加欄位:
1
命令:alter table 表名
add
欄位 型別 其他;
2
3
例如:在表My class中添加了一個欄位passtest,型別為
int
(
4
),預設值為
4
5
mysql>
alter table My class
add
passtest
int
(
4
)
default
’′
6
9、更改表名:
1
命令:rename table 原表名
to
新表名;
2
3
例如:在表
My class
名字更改為You class
4
5
mysql> rename table
My class
to
You class;
6
7
更新欄位內容
8
9
update 表名
set
欄位名 = 新內容
10
11
update 表名
set
欄位名 = replace(欄位名,’舊內容’, 新內容’)
12
13
update article
set
content=concat(‘ ’,content);
欄位型別和資料庫操作
1.INT[(M)] 型:正常大小整數型別
2.DOUBLE[(M,D)] [ZEROFILL] 型:正常大小(雙精密)浮點數位型別
3.DATE 日期型別:支持的範圍是-01-01到-12-31。MySQL以YYYY-MM-DD格式來顯示DATE值,但是允許你使用字串或數位把值賦給DATE列
4.CHAR(M) 型:定長字串型別,當儲存時,總是是用空格填滿右邊到指定的長度
5.BLOB TEXT型別,最大長度為(2^16-1)個字元。
6.VARCHAR型:變長字串型別
7.匯入資料庫表
1
建立
.sql
檔
2
3
先產生一個庫如
auction
.c
:mysqlbin
>
mysqladmin
-u
root
-p
create
auction
,會提示輸入密碼,然後成功建立。
4
5
匯入
auction
.sql
檔
6
7
c
:mysqlbin
>
mysql
-u
root
-p
auction
<
auction
.sql
。
8
9
透過以上操作,就可以建立了一個資料庫
auction
以及其中的一個表
auction
。
8.修改資料庫
1
在mysql的表中增加欄位:
2
3
alter
table
dbname
add
column
userid
int
(
11
)
not
null
primary
key
auto_increment;
4
5
這樣,就在表dbname中添加了一個欄位userid,型別為int(11)。
9.mysql資料庫的授權
1
mysql>
grant select,insert,delete,create,drop
2
3
on *.* (或test.*/user.*/..)
4
5
to 使用者名稱@localhost
6
7
identified by ‘密碼’;
8
9
如:新建一個使用者帳號以便可以存取資料庫,需要進行如下操作:
10
11
mysql>
grant usage
12
13
->
ON
test
.*
14
15
->
TO testuser@localhost;
16
17
Query OK, 0 rows affected (0.15 sec)
18
19
此後就建立了一個新使用者叫:testuser,這個使用者只能從localhost連線到資料庫並可以連線到test 資料庫。下一步,我們必須指定testuser這個使用者可以執行哪些操作:
20
21
mysql>
GRANT select, insert, delete,update
22
23
->
ON
test
.*
24
25
->
TO testuser@localhost;
26
27
Query OK, 0 rows affected (0.00 sec)
28
29
此操作使testuser能夠在每一個test資料庫中的表執行SELECT,INSERT和DELETE以及UPDATE查詢操作。現在我們結束操作並結束MySQL客戶程式:
30
31
mysql>
exit
DDL操作
1:使用SHOW語句找出在伺服器上當前存在什麽資料庫:
mysql> SHOW DATABASES;
2、建立一個資料庫MYSQLDATA
mysql> Create DATABASE MYSQLDATA;
3:選擇你所建立的資料庫
mysql> USE MYSQLDATA; (按回車鍵出現Database changed 時說明操作成功!)
4:檢視現在的資料庫中存在什麽表
mysql> SHOW TABLES;
5:建立一個資料庫表
mysql> Create TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
6:顯示表的結構:
mysql> DESCRIBE MYTABLE;
7:往表中加入記錄
mysql> insert into MYTABLE values (「hyq」,」M」);
8:用文本方式將數據裝入資料庫表中(例如D:/mysql.txt)
mysql> LOAD DATA LOCAL INFILE 「D:/mysql.txt」INTO TABLE MYTABLE;
9:匯入.sql檔命令(例如D:/mysql.sql)
mysql>use database;
mysql>source d:/mysql.sql;
10:刪除表
mysql>drop TABLE MYTABLE;
11:清空表
mysql>delete from MYTABLE;
12:更新表中數據
mysql>update MYTABLE set sex=」f」where name=’hyq’;
更多精彩
關註公眾號 「 浩道Linux 」
浩道Linux ,專註於 Linux系統 的相關知識、 網路通訊 、 網路安全 、 Python相關 知識以及涵蓋IT行業相關技能的學習, 理論與實戰結合,真正讓你在學習工作中真正去用到所學。同時也會分享一些面試經驗,助你找到高薪offer,讓我們一起去學習,一起去進步,一起去漲薪!期待您的加入~~~ 關註回復「資料」可 免費獲取學習資料 (含有電子書籍、視訊等)。
喜歡的話,記得 點「贊」 和 「在看」 哦