程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL數據庫經常使用操作和技能(DBA必備常識)

MySQL數據庫經常使用操作和技能(DBA必備常識)

編輯:MySQL綜合教程

MySQL數據庫經常使用操作和技能(DBA必備常識)。本站提示廣大學習愛好者:(MySQL數據庫經常使用操作和技能(DBA必備常識))文章只能為提供參考,不一定能成為您想要的結果。以下是MySQL數據庫經常使用操作和技能(DBA必備常識)正文


MySQL數據庫可以說是DBA們最多見和經常使用的數據庫之一,MySQL的普遍運用,也使更多的人參加到進修它的行列當中。上面是老MySQL DBA總結的MySQL數據庫最多見和最常應用的一些經歷和技能,分享給年夜家!

1、MySQL數據庫的備份

應用MySQL數據庫,最經常使用也是最主要的就是數據庫備份了,所以我們先引見數據庫備份。停止數據庫備份,又很正軌的數據庫備份辦法,同其他的數據庫辦事器有雷同的概念,但有無想過,MySQL會有更簡捷的應用文件目次的備份辦法,並且又快有好(這個辦法沒有獲得官樸直式文檔的驗證,我們暫稱為實驗吧)。

目標:備份hostA主機中一個mysql數據庫TestA,並恢復到到hostB機中。

實驗情況:

操作體系:WinNT4.0,Mysql3.22.34,phpMyAdmin 2.1.0;
在hostA中裝置mysql數據庫並樹立TestA數據庫;
hostB機裝置mysql數據庫,沒有TestA數據庫。

辦法步調:

1、啟動phpMyAdmin觀察HostA和HostB中的數據庫列表,在HostB中沒有TestA數據庫;

2、找到HostA中mysql的裝置目次,並找到數據庫目次data;

3、在我的實驗情況中,這個目次是C:mysqldata;

4、找到對應數據庫稱號的子目次C:mysqldataTestA;

5、粘貼拷貝到HostB的Data目次下,是HostA同HostB Mysql數據目次下的文件雷同;

6、刷新HostB的phpMyAdmin觀察一下數據庫列表,我們看到TestA曾經湧現,而且作查詢修正等操作都正常,備份恢復恢復勝利。

實驗結論:Mysql的數據庫可以經由過程文件情勢保留、備份、恢復,只需將響應文件目次恢復便可,無需應用其它對象備份。

2、銜接MySQL

格局: mysql -h主機地址 -u用戶名 -p用戶暗碼

1、銜接到本機上的MYSQL。

起首在翻開DOS窗口,然落後入目次 mysqlbin,再鍵入敕令mysql -uroot -p,回車後提醒你輸暗碼,假如剛裝置好MYSQL,超等用戶root是沒有暗碼的,故直接回車便可進入到MYSQL中了,MYSQL的提醒符是:mysql》。

2、銜接到長途主機上的MYSQL。假定長途主機的IP為:110.110.110.110,用戶名為root,暗碼為abcd123。則鍵入以下敕令:

mysql -h110.110.110.110 -uroot -pabcd123 (注:u與root可以不消加空格,其它也一樣)

3、加入MYSQL敕令: exit (回車)。

3、操作技能

1、假如你打敕令時,回車後發明忘卻加分號,你不必重打一遍敕令,只需打個分號回車便可以了。也就是說你可以把一個完全的敕令分紅幾行來打,完後用分號作停止標記就完成。

2、你可使用光標高低鍵調出之前的敕令。但之前我用過的一個MySQL舊版本不支撐。我如今用的是mysql-3.23.27-beta-win。

4、顯示敕令

1、顯示數據庫列表:

show databases;

剛開端時才兩個數據庫:mysql和test。MySQL庫很主要它外面有MYSQL的體系信息,我們改暗碼和新增用戶,現實上就是用這個庫停止操作。

2、顯示庫中的數據表:

use mysql; //翻開庫,學過FOXBASE的必定不會生疏吧

show tables;

3、顯示數據表的構造:

describe 表名;

4、建庫:

create database 庫名;

5、建表:

use 庫名;

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

6、刪庫和刪表:

drop database 庫名;

drop table 表名;

7、將表中記載清空:

delete from 表名;

8、顯示表中的記載:

select * from 表名;

5、一個建庫和建表和拔出數據的實例

drop database if exists school; //假如存在SCHOOL則刪除

create database school; //樹立庫SCHOOL

use school; //翻開庫SCHOOL

create table teacher //樹立表TEACHER

(

id int(3) auto_increment not null primary key,

name char(10) not null,

address varchar(50) default '深圳',

year date

); //建表停止

//以下為拔出字段

insert into teacher values('','glchengang','深圳一中','1976-10-10');

insert into teacher values('','jack','深圳一中','1975-12-23');

注:在建表中(1)將ID設為長度為3的數字字段:int;(2)並讓它每一個記載主動加一:auto_increment其實不能為空:not null並且讓他成為主字段primary key;(3)將NAME設為長度為10的字符字段;(4)將ADDRESS設為長度50的字符字段,並且缺省值為深圳。varchar和char有甚麼差別呢,只要等今後的文章再說了;(5)將YEAR設為日期字段。

假如你在MySQL提醒符鍵入下面的敕令也能夠,但不便利調試。你可以將以上敕令原樣寫入一個文本文件中假定為school.sql,然後復制到c:\\下,並在DOS狀況進入目次\\mysql\\bin,然後鍵入以下敕令:

mysql -uroot -p暗碼 《 c:\\school.sql

假如勝利,空出一行無任何顯示;若有毛病,會有提醒。(以上敕令曾經調試,你只需將//的正文去失落便可應用)。

6、修正暗碼

格局:mysqladmin -u用戶名 -p舊暗碼 password 新暗碼

1、給root加個暗碼ab12。起首在DOS下進入目次mysqlbin,然後鍵入以下敕令:

mysqladmin -uroot -password ab12

注:由於開端時root沒有暗碼,所以-p舊暗碼一項便可以省略了。

2、再將root的暗碼改成djg345。

mysqladmin -uroot -pab12 password djg345

七、增加新用戶。(留意:和下面分歧,上面的由於是MySQL情況中的敕令,所今後面都帶一個分號作為敕令停止符)

格局:grant select on 數據庫.* to 用戶名@登錄主機 identified by \“暗碼\”

例1、增長一個用戶test1暗碼為abc,讓他可以在任何主機上登錄,並對一切數據庫有查詢、拔出、修正、刪除的權限。起首用以root用戶連入MySQL,然後鍵入以下敕令:

grant select,insert,update,

delete on *.* to test1@\“%\” Identified by \“abc\”;

但例1增長的用戶是非常風險的,你想如某小我曉得test1的暗碼,那末他便可以在internet上的任何一台電腦上登錄你的MySQL數據庫並對你的數據可認為所欲為了,處理方法見例2。

例2、增長一個用戶test2暗碼為abc,讓他只可以在localhost上登錄,並可以對數據庫mydb停止查詢、拔出、修正、刪除的操作 (localhost指當地主機,即MySQL數據庫地點的那台主機),如許用戶即便用曉得test2的暗碼,他也沒法從internet上直接拜訪數據 庫,只能經由過程MySQL主機上的web頁來拜訪。

grant select,insert,update,

delete on mydb.* to test2@localhost identified by \“abc\”;

假如你不想test2有暗碼,可以再打一個敕令將暗碼消失落。

grant select,insert,update,delete on mydb

.* to test2@localhost identified by \“\”;

以上就是一些MySQL數據庫經常使用操作和技能。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved