国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

MySQL基礎常用命令_MySQL

來源:懂視網 責編:小采 時間:2020-11-09 18:32:56
文檔

MySQL基礎常用命令_MySQL

MySQL基礎常用命令_MySQL:bitsCN.com 一、啟動與關閉1.1 Linux下啟動mysql 的命令:a. rpm包安裝:service mysqld startb. 源碼包安裝:/usr/local/mysql/bin/mysqld_safe --user=mysql &1.2 Linux下重啟mysql 的命令:a. rpm包安裝:service my
推薦度:
導讀MySQL基礎常用命令_MySQL:bitsCN.com 一、啟動與關閉1.1 Linux下啟動mysql 的命令:a. rpm包安裝:service mysqld startb. 源碼包安裝:/usr/local/mysql/bin/mysqld_safe --user=mysql &1.2 Linux下重啟mysql 的命令:a. rpm包安裝:service my
bitsCN.com 一、啟動與關閉

1.1 Linux下啟動mysql 的命令:

  • a. rpm包安裝:service mysqld start
  • b. 源碼包安裝:/usr/local/mysql/bin/mysqld_safe --user=mysql &
  • 1.2 Linux下重啟mysql 的命令:

  • a. rpm包安裝:service mysqld restart
  • b. 源碼包安裝:
  • 先關閉mysql

    /usr/local/mysql/bin/mysqladmin -uroot -p shutdown

  • 再啟動mysql/usr/local/mysql/bin/mysqld_safe --user=mysql &
  • 1.3 Linux下關閉mysql 的命令:

  • a. rpm包安裝:service mysqld stop
  • b. 源碼包安裝:
  • 方法1、/usr/local/mysql/bin/mysqladmin -uroot -p shutdown
  • 方法2、killall mysqld //強行終止MySQL數據庫服務,有可能導致表損壞,不建議使用
  • 二、數據庫連接

    2.1 連接MySQL

    格式:$mysql_dir/bin/mysql [-h主機地址] -u用戶名 -p用戶密碼,回車后提示輸入密碼。

    2.2 退出MySQL

    格式:exit/quit

    三、修改密碼

    3.1 mysqladmin 命令

    格式:mysqladmin -u用戶名 -p舊密碼 password 新密碼

    例1:給root加個密碼123456。首先在終端下進入目錄$mysql_dir/bin,然后鍵入以下命令

    ./mysqladmin -uroot password ’123456′

    注:因為開始時root沒有密碼,所以-p舊密碼一項就可以省略了。

    例2:再將root的密碼改為abc123。

    ./mysqladmin -uroot -p123456 password abc123

    3.2 UPDATE user 語句

    首先使用root 帳戶登入mysql,然后執行:

    UPDATE mysql.user SET password=PASSWORD('123456') WHERE user='root';FLUSH PRIVILEGES;

    3.3 SET PASSWORD 語句

    同樣,首先使用root 帳戶登入mysql,然后執行:

    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('abc123');

    四、創建用戶與授權

    4.1 CREATE USER

    CREATE USER user [IDENTIFIED BY [PASSWORD] 'password'] [, user [IDENTIFIED BY [PASSWORD] 'password']] ...

    CREATE USER用于創建新的MySQL賬戶。要使用CREATE USER,您必須擁有mysql 數據庫的全局CREATE USER權限,或擁有INSERT權限。對于每個賬戶,CREATE USER會在沒有權限的mysql.user表中創建一個新記錄。如果賬戶已經存在,則出現錯誤。

    使用自選的IDENTIFIED BY子句,可以為賬戶指定一個密碼。user值和密碼的給定方法和GRANT語句一樣。特別要注意的是,要在純文本中指定密碼,需忽略PASSWORD關鍵詞。要把密碼指定為由PASSWORD()函數返回的混編值,需包含關鍵字PASSWORD。

    例1:創建新用戶david & sandy

    mysql> create user 'david'@'localhost' identified by 'password';Query OK, 0 rows affected (0.00 sec)mysql>
    mysql> create user 'sandy'@'localhost' identified by PASSWORD '*2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19';Query OK, 0 rows affected (0.00 sec)mysql>

    4.2 使用GRANT語句

    最好的方法是使用GRANT語句,因為這樣更精確,錯誤少。從MySQL 3.22.11起提供了GRANT;它的主要用途是來給帳戶授權的,但也可用來建立新帳戶并同時授權。

    注意:當mysql 運行于no_auto_create_user 時要提供新建用戶的密碼,否則不能創建新用戶。

    格式:

    GRANT privileges ON databasename.tablename TO 'username'@'host' identified by 'password'; 

    例1、增加一個用戶test1,密碼為abc,讓他可以在任何主機上登錄,并對所有數據庫擁有所有權限。

    首先用以root用戶連入MySQL,然后鍵入以下命令:

    grant all privileges on *.* to 'test1'@'%' identified by 'abc';flush privileges;

    例2、增加一個用戶test2,密碼為abc,讓他只可以在localhost上登錄,并可以對數據庫david進行查詢、插入、修改、刪除的操作。

    grant select,insert,update,delete on david.* to 'test2'@'localhost' identified by 'abc';flush privileges;

    如果不想test2有密碼,可以再打一個命令將密碼消掉。

    grant select,insert,update,delete on david.* to 'test2'@'localhost' identified by '';

    grant 更多用法,請自行Google+Baidu。

    4.3 直接操作MySQL授權表

    除了GRANT,你可以直接用INSERT語句創建相同的賬戶,然后使用FLUSH PRIVILEGES告訴服務器重載授權表。

    例1:創建用戶test3,讓其具有同4.2 例2中test2用戶同樣的權限。

    mysql> insert into mysql.user (Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv) values('localhost', 'test3', PASSWORD('password'),'Y','Y','Y','Y');Query OK, 1 row affected, 3 warnings (0.00 sec)mysql> flush privileges;Query OK, 0 rows affected (0.00 sec)mysql> 
    mysql> select Host, User, Password, Select_priv, Insert_priv, Update_priv, Delete_priv from mysql.user where User='test3';+-----------+-------+-------------------------------------------+-------------+-------------+-------------+-------------+| Host | User | Password | Select_priv | Insert_priv | Update_priv | Delete_priv |+-----------+-------+-------------------------------------------+-------------+-------------+-------------+-------------+| localhost | test3 | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 | Y | Y | Y | Y | +-----------+-------+-------------------------------------------+-------------+-------------+-------------+-------------+1 row in set (0.00 sec)mysql> 

    當用INSERT創建賬戶時,使用FLUSH PRIVILEGES 的原因是告訴服務器重讀授權表。否則,只有重啟服務器后更改才會生效。使用 GRANT,則不需要使用FLUSH PRIVILEGES。

    用INSERT語句時,使用PASSWORD()函數是為了加密密碼。GRANT語句自動加密密碼,因此不需要PASSWORD()。

    'Y' 值啟用賬戶權限。

    五、庫操作

    必須首先登錄到mysql 中,有關操作都是在mysql 的提示符下進行,而且每個命令以分號結束。

    5.1 創建數據庫

    命令:create database <數據庫名>;

    例1:創建一個名為test 的數據庫

    mysql> create database test;Query OK, 1 row affected (0.00 sec)mysql>

    5.2 顯示所有的數據庫

    命令:show databases;(注意:最后有個s)

    mysql> show databases;+--------------------+| Database |+--------------------+| information_schema | | david | | mysql | | test | +--------------------+4 rows in set (0.00 sec)mysql> 

    5.3 刪除數據庫

    命令:drop database <數據庫名>;

    例2:刪除名為test 的數據庫

    mysql> drop database test;Query OK, 0 rows affected (0.00 sec)mysql> 

    5.4 連接數據庫

    命令: use <數據庫名>;

    例3:連接david 數據庫

    mysql> use david;Database changedmysql> 

    5.5 查看當前使用的數據庫

    命令:select database();

    mysql> select database();+------------+| database() |+------------+| david | +------------+1 row in set (0.00 sec)mysql> 

    5.6 當前數據庫包含的表信息

    命令:show tables;(注意:最后有個s)

    mysql> show tables;+-----------------+| Tables_in_david |+-----------------+| emp | +-----------------+1 row in set (0.00 sec)mysql> 

    六、表操作

    操作之前應連接某個數據庫。

    6.1 建立表

    create table <表名> (<字段名1> <類型1> [,..<字段名n> <類型n>]);create table tablename (col1 type1 [not null] [primary key],col2 type2 [not null],..);
    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));Query OK, 0 rows affected (0.04 sec)mysql> 

    補充:根據已有的表創建新表。

    create table tab_new like tab_old; (只有表結構)

    create table tab_new as select * from tab_old; (既包含表結構,又包含表數據)

    只包含表結構:

    mysql> create table myclass2 like myclass;Query OK, 0 rows affected (0.00 sec)mysql> 

    既包含表結構,又包含表數據:

    mysql> insert into myclass values(1, 'david', 1, 20130417.16);Query OK, 1 row affected (0.02 sec)mysql> mysql> mysql> create table myclass3 as select * from myclass;Query OK, 1 row affected (0.07 sec)Records: 1 Duplicates: 0 Warnings: 0mysql> select * from myclass3;+----+-------+-----+-------------+| id | name | sex | degree |+----+-------+-----+-------------+| 1 | david | 1 | 20130417.16 | +----+-------+-----+-------------+1 row in set (0.02 sec)mysql> 

    6.2 獲取表結構

    命令:

    desc 表名;orshow columns from 表名;

    獲取myclass & myclass2 表結構

    mysql> desc myclass;+--------+--------------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra |+--------+--------------+------+-----+---------+----------------+| id | int(4) | NO | PRI | NULL | auto_increment | | name | char(20) | NO | | | | | sex | int(4) | NO | | 0 | | | degree | double(16,2) | YES | | NULL | | +--------+--------------+------+-----+---------+----------------+4 rows in set (0.00 sec)mysql> show columns from myclass2;+--------+--------------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra |+--------+--------------+------+-----+---------+----------------+| id | int(4) | NO | PRI | NULL | auto_increment | | name | char(20) | NO | | | | | sex | int(4) | NO | | 0 | | | degree | double(16,2) | YES | | NULL | | +--------+--------------+------+-----+---------+----------------+4 rows in set (0.00 sec)mysql> 

    6.3 刪除表

    命令:drop table <表名>;

    例:刪除表名為 myclass3 的表

    mysql> drop table myclass3;Query OK, 0 rows affected (0.00 sec)mysql> show tables;+-----------------+| Tables_in_david |+-----------------+| emp | | myclass | | myclass2 | +-----------------+3 rows in set (0.00 sec)mysql> 

    6.4 更改表名

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

    例:將表 myclass2 名字更改為 myclass4

    mysql> rename table myclass2 to myclass4;Query OK, 0 rows affected (0.02 sec)mysql> show tables;+-----------------+| Tables_in_david |+-----------------+| emp | | myclass | | myclass4 | +-----------------+3 rows in set (0.00 sec)mysql> 

    6.5 在表中增加字段

    命令:alter table 表名 add 字段 類型 其他;

    例:在表 myclass 中添加了一個字段passtest,類型為int(4),默認值為0。

    mysql> alter table myclass add passtest int(4) default '0';Query OK, 1 row affected (0.04 sec)Records: 1 Duplicates: 0 Warnings: 0mysql> desc myclass;+----------+--------------+------+-----+---------+----------------+| Field | Type | Null | Key | Default | Extra |+----------+--------------+------+-----+---------+----------------+| id | int(4) | NO | PRI | NULL | auto_increment | | name | char(20) | NO | | | | | sex | int(4) | NO | | 0 | | | degree | double(16,2) | YES | | NULL | | | passtest | int(4) | YES | | 0 | | +----------+--------------+------+-----+---------+----------------+5 rows in set (0.00 sec)mysql> 

    七、數據操作

    7.1 插入數據

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

    例:向 myclass 表中插入以下記錄,留空的表示使用默認值。

    mysql> insert into myclass (id, name, sex, degree, passtest) values(1, 'david', 1, 80.56, 78); Query OK, 1 row affected (0.00 sec)mysql> insert into myclass values(2, 'sandy', 0, 100, 90);Query OK, 1 row affected (0.00 sec)mysql> insert into myclass (id, name, sex, degree) values(3, 'renee', 0, 90.34);Query OK, 1 row affected (0.00 sec)mysql> insert into myclass (id, name) values(4, 'china');Query OK, 1 row affected (0.00 sec)mysql>

    7.2 查詢表中的數據

    a. 查詢所有行

    命令:select <字段1,字段2,...> from < 表名 > where < 表達式 >;

    例1:查看表 myclass 中所有數據

    mysql> select * from myclass;+----+-------+-----+--------+----------+| id | name | sex | degree | passtest |+----+-------+-----+--------+----------+| 1 | david | 1 | 80.56 | 78 | | 2 | sandy | 0 | 100.00 | 90 | | 3 | renee | 0 | 90.34 | 0 | | 4 | china | 0 | NULL | 0 | +----+-------+-----+--------+----------+4 rows in set (0.00 sec)mysql> 

    例2:查詢表 david 相關信息

    mysql> select * from myclass where name='david';+----+-------+-----+--------+----------+| id | name | sex | degree | passtest |+----+-------+-----+--------+----------+| 1 | david | 1 | 80.56 | 78 | +----+-------+-----+--------+----------+1 row in set (0.00 sec)mysql> 

    b. 查詢前幾行數據

    例如:查看表 myclass 中前2行數據

    mysql> select * from myclass limit 2;+----+-------+-----+--------+----------+| id | name | sex | degree | passtest |+----+-------+-----+--------+----------+| 1 | david | 1 | 80.56 | 78 | | 2 | sandy | 0 | 100.00 | 90 | +----+-------+-----+--------+----------+2 rows in set (0.00 sec)mysql>

    或者:

    mysql> select * from myclass order by id limit 2;+----+-------+-----+--------+----------+| id | name | sex | degree | passtest |+----+-------+-----+--------+----------+| 1 | david | 1 | 80.56 | 78 | | 2 | sandy | 0 | 100.00 | 90 | +----+-------+-----+--------+----------+2 rows in set (0.01 sec)mysql> 

    7.3 刪除表中的數據

    命令:delete from 表名 where 表達式;

    例如:刪除表 myclass 中編號為4的記錄

    mysql> delete from myclass where id=4;Query OK, 1 row affected (0.00 sec)mysql> select * from myclass;+----+-------+-----+--------+----------+| id | name | sex | degree | passtest |+----+-------+-----+--------+----------+| 1 | david | 1 | 80.56 | 78 | | 2 | sandy | 0 | 100.00 | 90 | | 3 | renee | 0 | 90.34 | 0 | +----+-------+-----+--------+----------+3 rows in set (0.00 sec)mysql> 

    7.4 修改表中的數據

    update 表名 set 字段 = 新值,… where 條件;

    例:修改 myclass 表中編號為1的記錄,將degree 值改成89.99

    mysql> update myclass set degree=89.99 where id=1;Query OK, 1 row affected (0.00 sec)Rows matched: 1 Changed: 1 Warnings: 0mysql> select * from myclass;+----+-------+-----+--------+----------+| id | name | sex | degree | passtest |+----+-------+-----+--------+----------+| 1 | david | 1 | 89.99 | 78 | | 2 | sandy | 0 | 100.00 | 90 | | 3 | renee | 0 | 90.34 | 0 | +----+-------+-----+--------+----------+3 rows in set (0.00 sec)mysql> 

    八、數據的導入導出

    8.1 導出整個數據庫

    命令:mysqldump -u 用戶名 -p 數據庫名 > 導出的文件名

    [root@TS-DEV bin]# ./mysqldump -uroot -p david > /tmp/david/david.sqlEnter password: [root@TS-DEV bin]# ll /tmp/david/total 4-rw-r--r-- 1 root root 2764 Apr 17 17:13 david.sql[root@TS-DEV bin]# 

    8.2 導出一個表

    命令:mysqldump -u 用戶名 -p 數據庫名 表名> 導出的文件名

    [root@TS-DEV bin]# ./mysqldump -uroot -p david myclass > /tmp/david/david_myclass.sqlEnter password: [root@TS-DEV bin]# ll /tmp/david/total 8-rw-r--r-- 1 root root 1854 Apr 17 17:16 david_myclass.sql-rw-r--r-- 1 root root 2764 Apr 17 17:13 david.sql[root@TS-DEV bin]# 

    8.3 導出一個數據庫結構

    命令:mysqldump -u root -p -d --add-drop-table test > test_db.sql

    -d 沒有數據 --add-drop-table 在每個create 語句之前增加一個drop table

    [root@TS-DEV bin]# ./mysqldump -uroot -p -d --add-drop-table david > /tmp/david/david_db.sqlEnter password: [root@TS-DEV bin]# 

    8.4 導入數據庫

    a. 常用source 命令

    進入mysql 數據庫控制臺

    # ./mysql -uroot -p

    mysql> show databases;+--------------------+| Database |+--------------------+| information_schema | | mysql | +--------------------+2 rows in set (0.00 sec)mysql> create database sandy;Query OK, 1 row affected (0.00 sec)mysql> show databases;+--------------------+| Database |+--------------------+| information_schema | | mysql | | sandy | +--------------------+3 rows in set (0.00 sec)mysql> use sandyDatabase changedmysql> source /tmp/david/david.sqlQuery OK, 0 rows affected (0.00 sec)...Query OK, 2 rows affected (0.00 sec)Records: 2 Duplicates: 0 Warnings: 0...Query OK, 3 rows affected (0.00 sec)Records: 3 Duplicates: 0 Warnings: 0...Query OK, 0 rows affected (0.00 sec)mysql> show tables;+-----------------+| Tables_in_sandy |+-----------------+| emp | | myclass | | myclass4 | +-----------------+3 rows in set (0.00 sec)mysql> select * from emp;+------+-------+| id | name |+------+-------+| 1 | david | | 2 | sandy | +------+-------+2 rows in set (0.00 sec)mysql> 

    b. 使用mysql 命令

    先創建要導入的數據庫 renee。

    mysql> create database renee;Query OK, 1 row affected (0.00 sec)mysql> show databases;+--------------------+| Database |+--------------------+| information_schema | | mysql | | renee | | sandy | +--------------------+4 rows in set (0.00 sec)mysql> 

    導入數據

    [root@TS-DEV bin]# ./mysql -uroot -p -D renee < /tmp/david/david_myclass.sql Enter password: [root@TS-DEV bin]#

    查看數據

    mysql> use renee;Database changedmysql> show tables;+-----------------+| Tables_in_renee |+-----------------+| myclass | +-----------------+1 row in set (0.00 sec)mysql> select * from myclass;+----+-------+-----+--------+----------+| id | name | sex | degree | passtest |+----+-------+-----+--------+----------+| 1 | david | 1 | 89.99 | 78 | | 2 | sandy | 0 | 100.00 | 90 | | 3 | nancy | 0 | 90.34 | 0 | +----+-------+-----+--------+----------+3 rows in set (0.00 sec)mysql> 

    更多導入導出命令,請自行Google+Baidu。

    bitsCN.com

    聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    MySQL基礎常用命令_MySQL

    MySQL基礎常用命令_MySQL:bitsCN.com 一、啟動與關閉1.1 Linux下啟動mysql 的命令:a. rpm包安裝:service mysqld startb. 源碼包安裝:/usr/local/mysql/bin/mysqld_safe --user=mysql &1.2 Linux下重啟mysql 的命令:a. rpm包安裝:service my
    推薦度:
    標簽: 基本 入門 命令
    • 熱門焦點

    最新推薦

    猜你喜歡

    熱門推薦

    專題
    Top
    主站蜘蛛池模板: 在线视频一二三区2021不卡 | 精品一区二区在线观看 | 欧美国产日韩综合 | 久久国产精品最新一区 | 国产精品久久二区三区色裕 | 国产成人综合欧美精品久久 | 欧美精品aaa久久久影院 | 91精品欧美一区二区三区 | 欧美专区第一页 | 在线永久免费观看的毛片 | 欧美福利在线观看 | 欧美日韩国产一区 | 精品国产一区二区三区香蕉 | 么公的又大又深又硬想要 | 久久久一区二区三区不卡 | 日韩无 | 亚洲综合欧美日本另类激情 | 欧美日韩视频在线 | 高清视频一区 | 精品国产成人综合久久小说 | 日韩 欧美 中文 | 日韩一区二区三区不卡 | 美女视频黄a视频免费全过程在线 | 亚洲欧美经典 | 国产成人精品一区二区三区 | 日韩欧美在线免费观看 | 亚洲伊人久久大香线蕉综合图片 | 久久久久国产精品美女毛片 | 久久91精品国产一区二区 | 图片专区亚洲 欧美 另类 | 欧美色图中文字幕 | 成人欧美一区二区三区视频 | 国产二区视频 | 国产精品视频免费 | 久久99免费 | 日韩国产在线观看 | 一区二区中文字幕 | 亚洲国产成人精品一区二区三区 | 亚洲激情在线观看 | 欧美亚洲自拍偷拍 | 国产区在线免费观看 |