国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學院 > 開發設計 > 正文

Linux 操作MySQL常用命令行

2019-11-08 20:58:29
字體:
來源:轉載
供稿:網友
注意:MySQL中每個命令后都要以分號;結尾。

  1、顯示數據庫      mysql> show databases;

  2、顯示數據庫中的表      mysql> use mysql; (打開庫,對每個庫進行操作就要打開此庫,類似于foxPRo )      Database changed

      mysql> show tables;  +-----------------+  | Tables_in_mysql |  +-----------------+  | columns_priv  |  | db       |  | func      |  | host      |  | tables_priv   |  | user      |  +-----------------+  6 rows in set (0.01 sec)

  3、顯示數據表的結構:        describe 表名;desc 表名;

  4、顯示表中的記錄:       select * from 表名;      例如:顯示mysql庫中user表中的紀錄。所有能對MySQL用戶操作的用戶都在此表中。      Select * from user;

  5、建庫:       create database 庫名;      例如:創建一個名字位aaa的庫      mysql> create databases aaa;

     6、建表:       use 庫名;       create table 表名 (字段設定列表);      例如:在剛創建的aaa庫中建立表name,表中有id(序號,自動增長),xm(姓名),xb(性別),csny(出身年月)四個字段      use aaa;       mysql> create table name (id int(3) auto_increment not null primary key, xm char(8),xb char(2),csny date);      可以用describe命令察看剛建立的表結構。      mysql> describe name;

 

  +-------+---------+------+-----+---------+----------------+  | Field | Type  | Null | Key | Default | Extra     |  +-------+---------+------+-----+---------+----------------+  | id  | int(3) |   | PRI | NULL  | auto_increment |  | xm  | char(8) | YES |   | NULL  |        |  | xb  | char(2) | YES |   | NULL  |        |  | csny | date  | YES |   | NULL  |        |  +-------+---------+------+-----+---------+----------------+

  7、增加記錄      例如:增加幾條相關紀錄。      mysql> insert into name values('','張三','男','1971-10-01');      mysql> insert into name values('','白云','女','1972-05-20');      可用select命令來驗證結果。      mysql> select * from name;  +----+------+------+------------+  | id | xm  | xb  | csny    |  +----+------+------+------------+  | 1 | 張三 | 男  | 1971-10-01 |  | 2 | 白云 | 女  | 1972-05-20 |  +----+------+------+------------+

  8、修改紀錄      例如:將張三的出生年月改為1971-01-10      mysql> update name set csny='1971-01-10' where xm='張三';

  9、刪除紀錄      例如:刪除張三的紀錄。      mysql> delete from name where xm='張三';

  10、刪庫和刪表        drop database 庫名;        drop table 表名;

    11、編碼的修改        如果要改變整個mysql的編碼格式:          啟動mysql的時候,mysqld_safe命令行加入         --default-character-set=gbk 

       如果要改變某個庫的編碼格式:在mysql提示符后輸入命令         alter database db_name default character set gbk;

12.重命名表

alter table t1 rename t2;

13.查看sql語句的效率

 explain < table_name >

例如:explain select * from t3 where id=3952602;

14.用文本方式將數據裝入數據庫表中(例如D:/mysql.txt)

mysql> LOAD DATA LOCAL INFILE "D:/mysql.txt" INTO TABLE MYTABLE;

注: auto_increment 自增     primary key    主鍵

啟動關閉Mysql

1.linux下啟動mysql的命令:       mysqladmin start      /ect/init.d/mysql start (前面為mysql的安裝路徑)

2.linux下重啟mysql的命令:       mysqladmin restart      /ect/init.d/mysql restart (前面為mysql的安裝路徑)

3.linux下關閉mysql的命令:       mysqladmin shutdown      /ect/init.d/mysql shutdown (前面為mysql的安裝路徑)

4.連接本機上的mysql:      進入目錄mysql/bin,再鍵入命令mysql -uroot -p, 回車后提示輸入密碼。      退出mysql命令:exit(回車)

例2:連接到遠程主機上的MYSQL。假設遠程主機的ip為:110.110.110.110,用戶名為root,密碼為abcd123。則鍵入以下命令:

mysql -h110.110.110.110 -uroot -pabcd123

(注:u與root可以不用加空格,其它也一樣)

3、退出MYSQL命令: exit (回車)。

5.修改mysql密碼:  mysqladmin -u用戶名 -p舊密碼 passWord 新密碼  或進入mysql命令行SET PASSWORD FOR root=PASSWORD("root");

6.增加新用戶。(注意:mysql環境中的命令后面都帶一個分號作為命令結束符)   grant select on 數據庫.* to 用戶名@登錄主機 identified by "密碼"   如增加一個用戶test密碼為123,讓他可以在任何主機上登錄, 并對所有數據庫有查詢、插入、修改、刪除的權限。首先用以root用戶連入mysql,然后鍵入以下命令:   grant select,insert,update,delete on *.* to " Identified by "123";

 

增加MySQL用戶

  格式:grant select on 數據庫.* to 用戶名@登錄主機 identified by "密碼"      例1、增加一個用戶user_1密碼為123,讓他可以在任何主機上登錄,并對所有數據庫有查詢、插入、修改、刪除的權限。首先用以root用戶連入MySQL,然后鍵入以下命令:

  mysql> grant select,insert,update,delete on *.* to user_1@"%" Identified by "123"; 

例1增加的用戶是十分危險的,如果知道了user_1的密碼,那么他就可以在網上的任何一臺電腦上登錄你的MySQL數據庫并對你的數據為所欲為了,解決辦法見例2。

  例2、增加一個用戶user_2密碼為123,讓此用戶只可以在localhost上登錄,并可以對數據庫aaa進行查詢、插入、修改、刪除的操作(localhost指本地主機,即MySQL數據庫所在的那臺主機),這樣用戶即使用知道user_2的密碼,他也無法從網上直接訪問數據庫,只能通過MYSQL主機來操作aaa庫。

  mysql>grant select,insert,update,delete on aaa.* to user_2@localhost identified by "123";

  用新增的用戶如果登錄不了MySQL,在登錄時用如下命令:

  mysql -u user_1 -p -h 192.168.113.50 (-h后跟的是要登錄主機的ip地址)

備份與恢復

  1、備份

  例如:將上例創建的aaa庫備份到文件back_aaa中

  [root@test1 root]# cd /home/data/mysql (進入到庫目錄,本例庫已由val/lib/mysql轉到/home/data/mysql,見上述第七部分內容)

      mysqldump -u root -p --opt 數據庫名> 備份名  [root@test1 mysql]# mysqldump -u root -p --opt aaa > back_aaa

  2、恢復

      mysql -u root -p 數據庫名<備份名 //恢復時數據庫必須存在 可以為空數據庫

  [root@test mysql]# mysql -u root -p ccc < back_aaa

 

數據的導入導出

1、文本數據轉到數據庫中文本數據應符合的格式:字段數據之間用tab鍵隔開,null值用來代替。例:1 name duty 2006-11-23數據傳入命令 load data local infile "文件名" into table 表名;

2、導出數據庫和表mysqldump --opt news > news.sql(將數據庫news中的所有表備份到news.sql文件,news.sql是一個文本文件,文件名任取。)mysqldump --opt news author article > author.article.sql(將數據庫news中的author表和article表備份到author.article.sql文件, author.article.sql是一個文本文件,文件名任取。)mysqldump --databases db1 db2 > news.sql(將數據庫dbl和db2備份到news.sql文件,news.sql是一個文本文件,文件名任取。)mysqldump -h host -u user -p pass --databases dbname > file.dump就是把host上的以名字user,口令pass的數據庫dbname導入到文件file.dump中mysqldump --all-databases > all-databases.sql(將所有數據庫備份到all-databases.sql文件,all-databases.sql是一個文本文件,文件名任取。)

3、導入數據mysql < all-databases.sql(導入數據庫)mysql>source news.sql;(在mysql命令下執行,可導入表)

 


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 金寨县| 巩义市| 吕梁市| 蒲城县| 德格县| 拉孜县| 新营市| 思茅市| 远安县| 界首市| 赤峰市| 汪清县| 乌苏市| 进贤县| 大方县| 文安县| 武冈市| 灵川县| 原阳县| 唐河县| 邵东县| 和林格尔县| 循化| 满洲里市| 赤水市| 阳朔县| 龙川县| 临海市| 仙居县| 渭南市| 新巴尔虎左旗| 栾城县| 耿马| 阿克陶县| 县级市| 元谋县| 江山市| 广州市| 大余县| 哈密市| 福清市|