欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySql命令實(shí)例匯總

 更新時(shí)間:2015年11月10日 09:46:17   作者:Ruthless  
這篇文章主要介紹了MySql命令,結(jié)合實(shí)例分析了MySQL數(shù)據(jù)庫(kù)的創(chuàng)建、連接及增刪改查等各種常用操作的使用方法與相關(guān)注意事項(xiàng),非常具有實(shí)用價(jià)值,需要的朋友可以參考下

本文實(shí)例總結(jié)了MySQL常用的各種操作命令。分享給大家供大家參考,具體如下:

Mysql安裝目錄

數(shù)據(jù)庫(kù)目錄

/var/lib/mysql/

配置文件

/usr/share/mysql(mysql.server命令及配置文件)

相關(guān)命令

/usr/bin(mysqladmin mysqldump等命令)

啟動(dòng)腳本

/etc/init.d/mysql(啟動(dòng)腳本文件mysql的目錄)

系統(tǒng)管理

連接MySQL

格式: mysql -h 主機(jī)地址 -u用戶名 -p用戶密碼

例 1:連接到本機(jī)上的 MySQL。

復(fù)制代碼 代碼如下:
hadoop@ubuntu:~$ mysql -uroot -pmysql;

例 2:連接到遠(yuǎn)程主機(jī)上的 MYSQL。

復(fù)制代碼 代碼如下:
hadoop@ubuntu:~$ mysql -h 127.0.0.1 -uroot -pmysql;

修改新密碼

在終端輸入:mysql -u用戶名 -p密碼,回車(chē)進(jìn)入Mysql。

> use mysql;
> update user set password=PASSWORD('新密碼') where user='用戶名';
> flush privileges; #更新權(quán)限
> quit; #退出

增加新用戶

格式:grant select on 數(shù)據(jù)庫(kù).* to 用戶名@登錄主機(jī) identified by '密碼'

舉例:

例 1:增加一個(gè)用戶 test1 密碼為 abc,讓他可以在任何主機(jī)上登錄,并對(duì)所有數(shù)據(jù)庫(kù)有
查詢、插入、修改、刪除的權(quán)限。首先用以 root 用戶連入 MySQL,然后鍵入以下命令:

復(fù)制代碼 代碼如下:
mysql>grant select,insert,update,delete on *.* to root@localhost identified by 'mysql';

或者
復(fù)制代碼 代碼如下:
grant all privileges on *.* to root@localhost identified by 'mysql';

然后刷新權(quán)限設(shè)置。
復(fù)制代碼 代碼如下:
flush privileges;

例 2:如果你不想 root 有密碼操作數(shù)據(jù)庫(kù)"mydb"里的數(shù)據(jù)表,可以再打一個(gè)命令將密碼消掉。

復(fù)制代碼 代碼如下:
grant select,insert,update,delete on mydb.* to root@localhost identified by '';

刪除用戶

hadoop@ubuntu:~$ mysql -u用戶名 -p密碼
mysql>delete from user where user='用戶名' and host='localhost';
mysql>flush privileges;
//刪除用戶的數(shù)據(jù)庫(kù)
mysql>drop database dbname;

數(shù)據(jù)庫(kù)操作

顯示所有的數(shù)據(jù)庫(kù)

復(fù)制代碼 代碼如下:
mysql> show databases;
(注意:最后有個(gè) s)

創(chuàng)建數(shù)據(jù)庫(kù)

復(fù)制代碼 代碼如下:
mysql> create database test;

連接數(shù)據(jù)庫(kù)

復(fù)制代碼 代碼如下:
mysql> use test;

查看當(dāng)前使用的數(shù)據(jù)庫(kù)

復(fù)制代碼 代碼如下:
mysql> select database();

當(dāng)前數(shù)據(jù)庫(kù)包含的表信息

復(fù)制代碼 代碼如下:
mysql> show tables;
(注意:最后有個(gè) s)

刪除數(shù)據(jù)庫(kù)

復(fù)制代碼 代碼如下:
mysql> drop database test;

表操作

備注:操作之前使用"use <數(shù)據(jù)庫(kù)名>"應(yīng)連接某個(gè)數(shù)據(jù)庫(kù)。

建表

命令:create table <表名> (<字段名 1> <類(lèi)型 1> [,..<字段名 n> <類(lèi)型 n>]);

例子:

mysql> create table MyClass(
> id int(4) not null primary key auto_increment,
> name char(20) not null,
> sex int(4) not null default '0',
> degree double(16,2));

獲取表結(jié)構(gòu)

命令: desc 表名,或者show columns from 表名

例子:

mysql> describe MyClass
mysql> desc MyClass;
mysql> show columns from MyClass;

刪除表

命令:drop table <表名>

例如:刪除表名為 MyClass 的表

復(fù)制代碼 代碼如下:
mysql> drop table MyClass;

插入數(shù)據(jù)

命令:insert into <表名> [( <字段名 1>[,..<字段名 n > ])] values ( 值 1 )[, ( 值 n )]
例子:

復(fù)制代碼 代碼如下:
mysql> insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);

查詢表中的數(shù)據(jù)

查詢所有行

復(fù)制代碼 代碼如下:
mysql> select * from MyClass;

查詢前幾行數(shù)據(jù)

例如:查看表 MyClass 中前 2 行數(shù)據(jù)

復(fù)制代碼 代碼如下:
mysql> select * from MyClass order by id limit 0,2;

或者
復(fù)制代碼 代碼如下:
mysql> select * from MyClass limit 0,2;

刪除表中數(shù)據(jù)

命令:delete from 表名 where 表達(dá)式

例如:刪除表 MyClass 中編號(hào)為 1 的記錄

復(fù)制代碼 代碼如下:
mysql> delete from MyClass where id=1;

修改表中數(shù)據(jù)

命令:update 表名 set 字段=新值,... where 條件

復(fù)制代碼 代碼如下:
mysql> update MyClass set name='Mary' where id=1;

在表中增加字段

命令:alter table 表名 add 字段 類(lèi)型 其他;

例如:在表 MyClass 中添加了一個(gè)字段 passtest,類(lèi)型為 int(4),默認(rèn)值為 0

復(fù)制代碼 代碼如下:
mysql> alter table MyClass add passtest int(4) default '0'

更改表名

命令:rename table 原表名 to 新表名;

例如:在表 MyClass 名字更改為 YouClass

復(fù)制代碼 代碼如下:
mysql> rename table MyClass to YouClass;

更新字段內(nèi)容

命令:update 表名 set 字段名 = 新內(nèi)容

update 表名 set 字段名 = replace(字段名, '舊內(nèi)容', '新內(nèi)容');

例如:文章前面加入 4 個(gè)空格

復(fù)制代碼 代碼如下:
update article set content=concat('    ', content);

數(shù)據(jù)庫(kù)導(dǎo)入導(dǎo)出

從數(shù)據(jù)庫(kù)導(dǎo)出數(shù)據(jù)庫(kù)文件

使用"mysqldump"命令

首先進(jìn)入 DOS 界面,然后進(jìn)行下面操作。

1)導(dǎo)出所有數(shù)據(jù)庫(kù)

格式:mysqldump -u [數(shù)據(jù)庫(kù)用戶名] -p -A>[備份文件的保存路徑]

2)導(dǎo)出數(shù)據(jù)和數(shù)據(jù)結(jié)構(gòu)

格式:mysqldump -u [數(shù)據(jù)庫(kù)用戶名] -p [要備份的數(shù)據(jù)庫(kù)名稱]>[備份文件的保存路徑]

舉例:

例 1:將數(shù)據(jù)庫(kù) mydb 導(dǎo)出到 e:\MySQL\mydb.sql 文件中。

打開(kāi)開(kāi)始->運(yùn)行->輸入"cmd",進(jìn)入命令行模式。

復(fù)制代碼 代碼如下:
c:\> mysqldump -h localhost -u root -p mydb >e:\MySQL\mydb.sql

然后輸入密碼,等待一會(huì)導(dǎo)出就成功了,可以到目標(biāo)文件中檢查是否成功。

例 2:將數(shù)據(jù)庫(kù) mydb 中的 mytable 導(dǎo)出到 e:\MySQL\mytable.sql 文件中。

復(fù)制代碼 代碼如下:
c:\> mysqldump -h localhost -u root -p mydb mytable>e:\MySQL\mytable.sql

例 3:將數(shù)據(jù)庫(kù) mydb 的結(jié)構(gòu)導(dǎo)出到 e:\MySQL\mydb_stru.sql 文件中。

復(fù)制代碼 代碼如下:
c:\> mysqldump -h localhost -u root -p mydb --add-drop-table >e:\MySQL\mydb_stru.sql

備注:-h localhost 可以省略,其一般在虛擬主機(jī)上用。

3)只導(dǎo)出數(shù)據(jù)不導(dǎo)出數(shù)據(jù)結(jié)構(gòu)

格式:

mysqldump -u [數(shù)據(jù)庫(kù)用戶名] -p -t [要備份的數(shù)據(jù)庫(kù)名稱]>[備份文件的保存路徑]

4)導(dǎo)出數(shù)據(jù)庫(kù)中的Events

格式:

mysqldump -u [數(shù)據(jù)庫(kù)用戶名] -p -E [數(shù)據(jù)庫(kù)用戶名]>[備份文件的保存路徑]

5)導(dǎo)出數(shù)據(jù)庫(kù)中的存儲(chǔ)過(guò)程和函數(shù)

格式:

mysqldump -u [數(shù)據(jù)庫(kù)用戶名] -p -R [數(shù)據(jù)庫(kù)用戶名]>[備份文件的保存路徑]

從外部文件導(dǎo)入數(shù)據(jù)庫(kù)中

1)使用"source"命令

首先進(jìn)入"mysql"命令控制臺(tái),然后創(chuàng)建數(shù)據(jù)庫(kù),然后使用該數(shù)據(jù)庫(kù)。最后執(zhí)行下面操作。

mysql>source [備份文件的保存路徑]

2)使用"<"符號(hào)

首先進(jìn)入"mysql"命令控制臺(tái),然后創(chuàng)建數(shù)據(jù)庫(kù),然后退出 MySQL,進(jìn)入 DOS 界面。最后執(zhí)行下面操作。

mysql -u root –p < [備份文件的保存路徑]

常用MySQL語(yǔ)句補(bǔ)充:

1. 使用SHOW語(yǔ)句找出在服務(wù)器上當(dāng)前存在什么數(shù)據(jù)庫(kù):

復(fù)制代碼 代碼如下:
mysql> SHOW DATABASES;

2. 2、創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)MYSQLDATA
復(fù)制代碼 代碼如下:
mysql> CREATE DATABASE MYSQLDATA;

3. 選擇你所創(chuàng)建的數(shù)據(jù)庫(kù)
復(fù)制代碼 代碼如下:
mysql> USE MYSQLDATA;
(按回車(chē)鍵出現(xiàn)Database changed 時(shí)說(shuō)明操作成功!)
4. 查看現(xiàn)在的數(shù)據(jù)庫(kù)中存在什么表
復(fù)制代碼 代碼如下:
mysql> SHOW TABLES;

5. 創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)表
復(fù)制代碼 代碼如下:
mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));

6. 顯示表的結(jié)構(gòu):
復(fù)制代碼 代碼如下:
mysql> DESCRIBE MYTABLE;

7. 往表中加入記錄
復(fù)制代碼 代碼如下:
mysql> insert into MYTABLE values ("hyq","M");

8. 用文本方式將數(shù)據(jù)裝入數(shù)據(jù)庫(kù)表中(例如D:/mysql.txt)
復(fù)制代碼 代碼如下:
mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;

9. 導(dǎo)入.sql文件命令(例如D:/mysql.sql)
復(fù)制代碼 代碼如下:
mysql>use database;
mysql>source d:/mysql.sql;

10. 刪除表
復(fù)制代碼 代碼如下:
mysql>drop TABLE MYTABLE;

11. 清空表
復(fù)制代碼 代碼如下:
mysql>delete from MYTABLE;

12. 更新表中數(shù)據(jù)
復(fù)制代碼 代碼如下:
mysql>update MYTABLE set sex="f" where name='hyq';

以下是在網(wǎng)絡(luò)看到的使用MySql的管理心得:

在windows中MySql以服務(wù)形式存在,在使用前應(yīng)確保此服務(wù)已經(jīng)啟動(dòng),未啟動(dòng)可用net start mysql命令啟動(dòng)。而Linux中啟動(dòng)時(shí)可用"/etc/rc.d/init.d/mysqld start"命令,注意啟動(dòng)者應(yīng)具有管理員權(quán)限。

剛安裝好的MySql包含一個(gè)含空密碼的root帳戶和一個(gè)匿名帳戶,這是很大的安全隱患,對(duì)于一些重要的應(yīng)用我們應(yīng)將安全性盡可能提高,在這里應(yīng)把匿名帳戶刪除、 root帳戶設(shè)置密碼,可用如下命令進(jìn)行:

use mysql;
delete from User where User="";
update User set Password=PASSWORD('newpassword') where User='root';

如果要對(duì)用戶所用的登錄終端進(jìn)行限制,可以更新User表中相應(yīng)用戶的Host字段,在進(jìn)行了以上更改后應(yīng)重新啟動(dòng)數(shù)據(jù)庫(kù)服務(wù),此時(shí)登錄時(shí)可用如下類(lèi)似命令:

mysql -uroot -p;
mysql -uroot -pnewpassword;
mysql mydb -uroot -p;
mysql mydb -uroot -pnewpassword;

上面命令參數(shù)是常用參數(shù)的一部分,詳細(xì)情況可參考文檔。此處的mydb是要登錄的數(shù)據(jù)庫(kù)的名稱。

在進(jìn)行開(kāi)發(fā)和實(shí)際應(yīng)用中,用戶不應(yīng)該只用root用戶進(jìn)行連接數(shù)據(jù)庫(kù),雖然使用root用戶進(jìn)行測(cè)試時(shí)很方便,但會(huì)給系統(tǒng)帶來(lái)重大安全隱患,也不利于管理技 術(shù)的提高。我們給一個(gè)應(yīng)用中使用的用戶賦予最恰當(dāng)?shù)臄?shù)據(jù)庫(kù)權(quán)限。如一個(gè)只進(jìn)行數(shù)據(jù)插入的用戶不應(yīng)賦予其刪除數(shù)據(jù)的權(quán)限。MySql的用戶管理是通過(guò) User表來(lái)實(shí)現(xiàn)的,添加新用戶常用的方法有兩個(gè),一是在User表插入相應(yīng)的數(shù)據(jù)行,同時(shí)設(shè)置相應(yīng)的權(quán)限;二是通過(guò)GRANT命令創(chuàng)建具有某種權(quán)限的用 戶。其中GRANT的常用用法如下:

grant all on mydb.* to NewUserName@HostName identified by "password" ;
grant usage on *.* to NewUserName@HostName identified by "password";
grant select,insert,update on mydb.* to NewUserName@HostName identified by "password";
grant update,delete on mydb.TestTable to NewUserName@HostName identified by "password";

若要給此用戶賦予他在相應(yīng)對(duì)象上的權(quán)限的管理能力,可在GRANT后面添加WITH GRANT OPTION選項(xiàng)。而對(duì)于用插入U(xiǎn)ser表添加的用戶,Password字段應(yīng)用PASSWORD 函數(shù)進(jìn)行更新加密,以防不軌之人竊看密碼。對(duì)于那些已經(jīng)不用的用戶應(yīng)給予清除,權(quán)限過(guò)界的用戶應(yīng)及時(shí)回收權(quán)限,回收權(quán)限可以通過(guò)更新User表相應(yīng)字段, 也可以使用REVOKE操作。

下面給出本人從其它資料(www.cn-java.com)獲得的對(duì)常用權(quán)限的解釋:

全局管理權(quán)限:

FILE: 在MySQL服務(wù)器上讀寫(xiě)文件。
PROCESS: 顯示或殺死屬于其它用戶的服務(wù)線程。
RELOAD: 重載訪問(wèn)控制表,刷新日志等。
SHUTDOWN: 關(guān)閉MySQL服務(wù)。
數(shù)據(jù)庫(kù)/數(shù)據(jù)表/數(shù)據(jù)列權(quán)限:
ALTER: 修改已存在的數(shù)據(jù)表(例如增加/刪除列)和索引。
CREATE: 建立新的數(shù)據(jù)庫(kù)或數(shù)據(jù)表。
DELETE: 刪除表的記錄。
DROP: 刪除數(shù)據(jù)表或數(shù)據(jù)庫(kù)。
INDEX: 建立或刪除索引。
INSERT: 增加表的記錄。
SELECT: 顯示/搜索表的記錄。
UPDATE: 修改表中已存在的記錄。
特別的權(quán)限:
ALL: 允許做任何事(和root一樣)。
USAGE: 只允許登錄–其它什么也不允許做。

希望本文所述對(duì)大家MySQL數(shù)據(jù)庫(kù)設(shè)計(jì)有所幫助。

相關(guān)文章

  • mysql中如何查看表空間

    mysql中如何查看表空間

    這篇文章主要介紹了mysql中如何查看表空間問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-02-02
  • mysql中自增auto_increment功能的相關(guān)設(shè)置及問(wèn)題

    mysql中自增auto_increment功能的相關(guān)設(shè)置及問(wèn)題

    mysql中的自增auto_increment功能相信每位phper都用過(guò),本文就為大家分享一下mysql字段自增功能的具體查看及設(shè)置方法
    2012-12-12
  • 關(guān)于數(shù)據(jù)庫(kù)中的查詢優(yōu)化

    關(guān)于數(shù)據(jù)庫(kù)中的查詢優(yōu)化

    這篇文章主要介紹了關(guān)于數(shù)據(jù)庫(kù)中的查詢優(yōu)化,對(duì)于大型的應(yīng)用系統(tǒng),數(shù)據(jù)動(dòng)輒上百萬(wàn),就需要了解DBMS對(duì)查詢語(yǔ)句的處理過(guò)程和優(yōu)化算法,更好的利用其優(yōu)化算法,以提高系統(tǒng)的性能,需要的朋友可以參考下
    2023-07-07
  • mysql ERROR 1044 (42000): Access denied for user ''''@''localhost'' to database

    mysql ERROR 1044 (42000): Access denied for user ''''@''loca

    這篇文章主要介紹了mysql下提示ERROR 1044 (42000): Access denied for user ''@'localhost' to database,需要的朋友可以參考下
    2015-09-09
  • MySQL分區(qū)表的正確使用方法

    MySQL分區(qū)表的正確使用方法

    這篇文章主要給大家介紹了關(guān)于MySQL分區(qū)表的正確使用方法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧
    2019-01-01
  • MySQL由淺入深探究存儲(chǔ)過(guò)程

    MySQL由淺入深探究存儲(chǔ)過(guò)程

    存儲(chǔ)過(guò)程就是一條或者多條SQL語(yǔ)句的集合,可以視為批文件,它可以定義批量插入的語(yǔ)句,也可以定義一個(gè)接收不同條件的SQL,下面這篇文章主要給大家介紹了關(guān)于MySQL中存儲(chǔ)過(guò)程的相關(guān)資料,需要的朋友可以參考下
    2022-07-07
  • 深入解析MySQL雙寫(xiě)緩沖區(qū)

    深入解析MySQL雙寫(xiě)緩沖區(qū)

    雙寫(xiě)緩沖區(qū)是MySQL中的一種優(yōu)化方式,主要用于提高數(shù)據(jù)的寫(xiě)性能,本文將介紹Doublewrite Buffer的原理和應(yīng)用,幫助讀者深入理解其如何提高M(jìn)ySQL的數(shù)據(jù)可靠性并防止可能的數(shù)據(jù)損壞,感興趣的可以了解一下
    2024-02-02
  • mysql 5.7.13 安裝配置筆記(Mac os)

    mysql 5.7.13 安裝配置筆記(Mac os)

    這篇文章主要為大家詳細(xì)介紹了Mac os下mysql 5.7.13 安裝配置方法教程,感興趣的小伙伴們可以參考一下
    2016-06-06
  • mysql導(dǎo)出導(dǎo)入中文表解決方法

    mysql導(dǎo)出導(dǎo)入中文表解決方法

    在開(kāi)發(fā)過(guò)程中會(huì)經(jīng)常用到mysql導(dǎo)出導(dǎo)入中文表,本文將詳細(xì)介紹其如何使用,需要的朋友可以參考下
    2012-11-11
  • MySql數(shù)據(jù)引擎簡(jiǎn)介與選擇方法

    MySql數(shù)據(jù)引擎簡(jiǎn)介與選擇方法

    在MySQL 5.1中,MySQL AB引入了新的插件式存儲(chǔ)引擎體系結(jié)構(gòu),允許將存儲(chǔ)引擎加載到正在運(yùn)新的MySQL服務(wù)器中
    2012-11-11

最新評(píng)論