xml地图|网站地图|网站标签 [设为首页] [加入收藏]
当前位置: www8029com > 澳门新葡8522最新网站 > 正文

MySQL常用命令总结,常用命令

时间:2019-12-14 22:08来源:澳门新葡8522最新网站
  MySQL数据库对大小写不灵敏,如id和ID,select和SELECT.。 生龙活虎、mysql命令客商连接数据库。 mysql命令格式:mysql -h主机地址 -u客商名 -p顾客密码 1卡塔尔连接到本机上的MYSQL 首先展开

  MySQL数据库对大小写不灵敏,如id和ID,select和SELECT.。

生龙活虎、mysql命令客商连接数据库。
  mysql命令格式: mysql -h主机地址 -u客商名 -p顾客密码
  1卡塔尔连接到本机上的MYSQL
  首先展开DOS窗口,然后走入目录mysqlbin,再键入命令mysql -u root -p,回车的前边提示您输密码。
  注意客商名前能够有空格也得以未有空格,不过密码前必须未有空格,不然让您再一次输入密码。
  假若刚安装好MYSQL,一流顾客root是从未密码的,故间接回车就能够步向到MYSQL中了,MYSQL的唤醒符是: mysql>
  2卡塔尔(英语:State of Qatar)连接到远程主机上的MYSQL
  假诺远程主机的IP为:110.110.110.110,顾客名字为root,密码为abcd123。则键入以下命令:
    mysql -h110.110.110.110 -u root -p 123;(注:u与root之间能够毫无加空格,别的也生龙活虎致)
  3) 退出MYSQL命令
  exit (回车)

1.数据库

二、mysqladmin命令用于校订顾客密码。
  mysqladmin命令格式:mysqladmin -u 顾客名 -p 旧密码 password 新密码
  1卡塔尔给root加个密码ab12
  首先在DOS下步向目录mysqlbin,然后键入以下命令:
     mysqladmin -u root -password ab12
  注:因为初阶时root未有密码,所以-p 旧密码豆蔻梢头项就足以轻便了。
  2卡塔尔(英语:State of Qatar)再将root的密码改为djg345
      mysqladmin -u root -p ab12 password djg345

  create database <数据库名>  成立数据库

三、grant on命令用于追加新客户并垄断其权力。
  grant on命令格式:grant select on 数据库.* to 客商名@登陆主机 identified by “密码”;
  1卡塔尔(英语:State of Qatar)扩充二个顾客test1,密码为abc,让她能够在任何主机上登入,并对持有数据库有询问、插入、修改、删除的权力。首先用root客户连入MYSQL,然后键入以下命令:
      grant select,insert,update,delete on *.* to [email=test1@”%]test1@”%[/email]” Identified by “abc”;
  但扩大的客商是特别危殆的,你想如某人知道test1的密码,那么她就能够在internet上的别的生机勃勃台计算机上登陆你的mysql数据库并对您的数额可以横行霸道了,消除办法如下。
  2卡塔尔(英语:State of Qatar)扩张三个客户test2密码为abc,让她只好在localhost上登陆,并得以对数据库mydb进行查询、插入、纠正、删除的操作(localhost指当地主机,即MYSQL数据库所在的那台主机),那样客户即选取知道test2的密码,

  use <数据库名>  连接数据库

  他也无从从internet上一贯访谈数据库,只好通过MYSQL主机上的web页来访谈了。
    grant select,insert,update,delete on mydb.* to [email=test2@localhost]test2@localhost[/email] identified by “abc”;

  注:use表示前段时间三回九转上了哪些数据库,并不会潜移暗化对任何数据库的会见

四、create命令用于创制数据库。

          如: use db_1;

  create命令格式:create database <数据库名>;

                  select * from db_2.logs

  留意:创制数据库在此之前要先三番一遍Mysql服务器。

  drop database <数据库名> 删除数据库,不会提箱

  1卡塔尔(英语:State of Qatar)创立两个名称为xhkdb的数据库:
  mysql> create database xhkdb;
  2卡塔尔(英语:State of Qatar) 成立数据库并分配客商:

  drop database if exists <数据库名> 若是存在,删除数据库

  1. CREATE DATABASE 数据库名;
  2. GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,ALTECR-V ON 数据库名.* TO 数据库名@localhost IDENTIFIED BY '密码';
  3. SET PASSWO君越D FOHaval '数据库名'@'localhost' = OLD_PASSWORD('密码');

  show databases  查询全体数据库

  依次施行3个指令完结数据库成立。
  注意:普通话“密码”和“数据库”是户自身要求安装的。

  select version(卡塔尔(英语:State of Qatar) 查询数据库版本

五、show databases命令用于显示全部数据库。
  show databases命令格式:show databases; (注意:最后有个s)
  例如:mysql> show databases;
  注意:为了不在呈现的时候乱码,要改正数据库私下认可编码。以下以GBK编码页面为例进行表明。
  1)改革MYSQL的配备文件:my.ini里面校订default-character-set=gbk

  select database(卡塔尔 查询数据库名称

六、drop命令用于删除数据库。
  drop命令格式:drop database <数据库名>;
  比方,删除名为xhkdb的数据库:
  mysql> drop database xhkdb;
  [例子1] 删除四个已经规定期存款在的数据库:
     mysql> drop database drop_database;
     Query OK, 0 rows affected (0.00 sec)
  [例子2] 删除一个不明确期存款在的数据库:
    mysql> drop database drop_database;
    ERROR 1008 (HY000): Can't drop database 'drop_database'; database doesn't exist
    // 产生错误,不能够去除'drop_database'数据库,该数据库海市蜃楼。
    mysql> drop database if exists drop_database;
    Query OK, 0 rows affected, 1 warning (0.00 sec)
    //发生二个警报表达此数据库不设有
    mysql> create database drop_database;  // 创立八个数据库
    Query OK, 1 row affected (0.00 sec)
    mysql> drop database if exists drop_database;  // if exists 推断数据库是或不是存在,子虚乌有也不发出错误
    Query OK, 0 rows affected (0.00 sec)

2.表

七、use命令能够让大家来行使数据库。
  use命令格式: use <数据库名>;
  比如,借使xhkdb数据仓库储存在,尝试存取它:
     mysql> use xhkdb;
  荧屏提醒:Database changed
  1卡塔尔国use 语句能够文告MySQL把db_name数据库作为暗许(当前)数据库使用,用于后续语句。该数据库保持为暗许数据库,直到语段的末梢,也许直到现身下八个不等的use语句:
     mysql> USE db1;
     mysql> SELECT COUNT(*) FROM mytable;   # selects from db1.mytable
     mysql> USE db2;
     mysql> SELECT COUNT(*) FROM mytable;   # selects from db2.mytable
  2卡塔尔(قطر‎使用USE语句为多少个特定的一时的数据库做标志,不会堵住你访谈其余数据库中的表。下边的事例能够从db1数据库访谈author表,并从db2数据库访谈editor表:
      mysql> USE db1;
      mysql> SELECT author_name,editor_name FROM author,db2.editor
          ->       WHERE author.editor_id = db2.editor.editor_id;
  use语句被设置出来,用于与Sybase相包容。
  有个别网上亲密的朋友问到,连接未来怎么退出。其实,不用退出去,use 数据库后,使用show databases就能够查询全部数据库,纵然想跳到其余数据库,用 use 别的数据库名字就足以了。

  show tables 查询全部表

八、elect命令代表如今增选(连接)的数据库。
  select命令格式:mysql> select database(卡塔尔(قطر‎;
  MySQL中SELECT命令雷同于任何编制程序语言里的print也许write,你能够用它来体现三个字符串、数字、数学表明式的结果等等。怎么样选拔MySQL中SELECT命令的杰出意义吗?
  1) 显示MYSQL的版本
    mysql> select version(); 
     -----------------------  
    | version()             | 
     -----------------------  
    | 6.0.4-alpha-community | 
     -----------------------  
    1 row in set (0.02 sec) 
  2卡塔尔(قطر‎呈现当前光阴
    mysql> select now(); 
     ---------------------  
    | now()               | 
     ---------------------  
    | 2009-09-15 22:35:32 | 
     ---------------------  
    1 row in set (0.04 sec) 
  3)展现年月日
    SELECT DAYOFMONTH(CURRENT_DATE); 
     --------------------------  
    | DAYOFMONTH(CURRENT_DATE) | 
     --------------------------  
    |                       15 | 
     --------------------------  
    1 row in set (0.01 sec) 

  create table <表名>( <字段名1> <类型1>[,...<字段名n> <类型n>] 卡塔尔(قطر‎   制造数据库

九、create table命令用来成立数据表。
  create table命令格式:create table <表名> (<字段名1> <类型1> [,..<字段名n> <类型n>]);
  举例,建构贰个名叫MyClass的表:

  drop table  <表名>  删除表

字段名 数字类型 数据宽度 是否为空 是否主键 自动增加 默认值
id int 4 primary key auto_increment  
name char 20      
sex int 4     0
degree double 16      

澳门新葡8522最新网站,  drop table if exist  <表名>  如若存在,删除表

 

  rename table <原表名> to <新表名>

 

  delete from <表名> where <表明式> 删除表中数量

 

  insert into <表名> [(<字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )] 插入数据

 

  update <表名> set 字段=值, ... where <表明式>  更新表中数量

  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));

  select <字段1,字段2, ...> from <表名> where <表达式> order by <字段x, ...> limit m,n group by <字段y, ...> having <表达式>  查询

十、desc命令用于获取数据表构造。
  desc命令格式:
    desc 表名;
  同样
      show columns from 表名;
  也能收获数据表构造。
  举个例子如下:
  mysql> desc MyClass;
  mysql> show columns from MyClass;
  使用MySQL数据库desc 表名时,大家见到Key那大器晚成栏,恐怕会有4种值,即 ' ','P奥迪Q3I','UNI','MUL'。

  alert table <表名> add <字段名> <类型>[... 其他]  给表扩大字段

  1. 就算Key是空的,那么该列值的能够再一次,表示该列未有索引,或许是贰个非唯生机勃勃的复合索引的非前导列;
  2. 大器晚成经Key是P昂CoraI,那么该列是主键的组成部分;
  3. 假若Key是UNI,那么该列是三个唯风姿罗曼蒂克值索引的率先列(前导列),并别不可能含有空值(NULL);
  4. 假定Key是MUL,那么该列的值能够另行,该列是二个非独一索引的前导列(第一列)或许是二个唯大器晚成性索引的组成都部队分不过能够满含空值NULL。

  alert table <表名> drop <字段名>  删除表中的字段

  假若对于一个列的概念,同不常间满意上述4种情况的有余,譬喻多少个列既是P安德拉I,又是UNI,那么"desc 表名"的时候,显示的Key值遵照事前级来显示P昂科雷I->UNI->MUL。那么那时,呈现PLX570I。
  八个唯风流罗曼蒂克性索引列能够显得为P宝马X5I,而且该列不可能含有空值,同期该表未有主键。
  四个唯意气风发性索引列能够彰显为MUL,假如多列构成了三个唯意气风发性复合索引,因为纵然索引的多列组合是有一无二的,比如ID NAME是唯风流倜傥的,不过没三个独门的列依旧得以有双重的值,只要ID NAME是唯生龙活虎的就可以。

  alert table <表名> change <原字段名>   <新字段名> <新的类型>  匡正表中字段

十风华正茂、rop table命令用于删除数据表。
  drop table命令格式:drop table <表名>;
  比如,删除表名叫MyClass 的表:
    mysql> drop table MyClass;
  DROP TABLE用于删除叁个或多个表。您必需有各样表的DROP权限。全部的表数据和表定义会被吊销,所以使用本语句要小心!
  注意:对于二个带分区的表,DROP TABLE会永恒性地收回表定义,撤消各分区,并注销积累在那几个分区中的全部数据。DROP TABLE还大概会收回与被吊销的表有关联的分区定义(.par)文件。
  对与荒诞不经的表,使用IF EXISTS用于防止错误产生。当使用IF EXISTS时,对于各种荒诞不经的表,会生成一个NOTE(警报)。
  REST冠道ICT和CASCADE能够使分区更便于。近年来,REST智跑ICT和CASCADE不起功用。

  show index from <表名>  查询索引

十九、insert into命令用于向表中插入数据。
  insert into命令格式:insert into <表名> [(<字段名1>[,..<字段名n > ])] values ( 值1 )[, ( 值n )];
  比如:往表 MyClass中插入两条记下,这两条记下代表:编号为1的名叫汤姆的大成为96.45,编号为2 的名称叫Joan 的成绩为82.99,编号为3 的名称叫Wang 的实际业绩为96.5。
    mysql> insert into MyClass values(1,'Tom',96.45),(2,'Joan',82.99), (2,'Wang', 96.59);
  注意:insert into每一回只可以向表中插入一条记下。

  show keys from <表名>  查询索引

十一、select from:查询表中多少

  alert table <表名> add index <索引名> (<字段名1[, 字段名2 ...]>) 给表加多索引

  1卡塔尔国查询全体行
  命令格式: select <字段1, 字段2, ...> from < 表名 > where < 表达式 >;
  例如,查看表 MyClass 中享有数据:
   mysql> select * from MyClass;
  2)查询前几行数据
  例如,查看表 MyClass 中前2行数据:
    mysql> select * from MyClass order by id limit 0,2;
  select平常协作where使用,以询问更确切更复杂的数额。

  alert table <表名> add unique <索引名> (<字段名>) 给表加多独一索引

十一、delete from命令用于删除表中的数额。
  delete from命令格式:delete from 表名 where 表明式
  比方,删除表 MyClass中编号为1 的笔录:
    mysql> delete from MyClass where id=1;
  请对照一下刨除数据前后表的扭转。

  alert table <表名> add primary key (<字段名>卡塔尔国   给表中的主键增多索引

 

3.备份

FirstName LastName Age
Peter Griffin 35
Glenn Quagmire 33

  mysqldump -u <顾客名> -p <数据库名>  >  导出的文本名        导出数据库,导出文件暗中同意在mysql/bin目录下

 

  mysqldump -u <客商名> -p <数据库名>  <表名>   >  导出的文件名

 

 

十六、update set命令用来改善表中的数据。

  update set命令格式:update 表名 set 字段=新值,… where 条件;
  例如如下:
  mysql> update MyClass set name='Mary' where id=1;
  例子1,单表的MySQL UPDATE语句:
  UPDATE [LOW_PRIORITY] [IGNORE] tbl_name SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition] [ORDER BY ...] [LIMIT row_count];
  例子2,多表的UPDATE语句:
  UPDATE [LOW_PRIORITY] [IGNORE] table_references SET col_name1=expr1 [, col_name2=expr2 ...] [WHERE where_definition];
  UPDATE语法能够用新值更新原有表行中的各列。SET子句提醒要校订哪些列和要给予什么值。WHERE子句钦点应改良哪些行。若无WHERE子句,则更新具备的行。如若钦定了O奥迪Q7DER BY子句,则依据被内定的顺序对行举办翻新。LIMIT子句用于给定三个限值,限制可以被更新的行的多少。

十七、alter add命令用来增加表的字段。
  alter add命令格式:alter table 表名 add字段 类型 其余;
  举个例子,在表MyClass中增添了三个字段passtest,类型为int(4卡塔尔国,暗中认可值为0:
   mysql> alter table MyClass add passtest int(4) default '0';
  1) 加索引
     mysql> alter table 表名 add index 索引名 (字段名1[,字段名2 …]);
  例子: mysql> alter table employee add index emp_name (name);
  2卡塔尔(قطر‎ 加主关键字的目录
    mysql> alter table 表名 add primary key (字段名);
  例子: mysql> alter table employee add primary key(id);、
  3卡塔尔 加唯一限定标准的目录
   mysql> alter table 表名 add unique 索引名 (字段名);
  例子: mysql> alter table employee add unique emp_name2(cardnumber);
  4卡塔尔 删除有些索引
   mysql> alter table 表名 drop index 索引名;
  例子: mysql>alter table employee drop index emp_name;
  5卡塔尔国 扩充字段
    mysql> ALTER TABLE table_name ADD field_name field_type;
  6卡塔尔国 修正原字段名称及项目
    mysql> ALTER TABLE table_name CHANGE old_field_name new_field_name field_type;
  7卡塔尔 删除字段
    MySQL ALTER TABLE table_name DROP field_name;

十二、rename命令用于修正表名。
  rename命令格式:rename table 原表名 to 新表名;
  举例,在表MyClass名字改成为YouClass:
    mysql> rename table MyClass to YouClass;
  当您实施 RENAME 时,你不能够有别的锁定的表或挪动的事体。你同大器晚成也亟须有对原初表的 ALTERubicon 和 DROP 权限,以致对新表的 CREATE 和 INSERT 权限。
  借使在多表更名中,MySQL 遭碰到任何错误,它将对持有被更名的表打开退步更名,将每件东西退回到中期状态。
  RENAME TABLE 在 MySQL 3.23.23 中被投入。

十五、mysqldump命令用来备份数据库。
  mysqldump命令在DOS的[url=file://\mysql\bin]\mysql\bin[/url]目录下实行。
  1卡塔尔(英语:State of Qatar) 导出成套数据库(导出文件暗中同意是存在mysqlbin目录下)
      mysqldump -u 客户名 -p 数据库名 > 导出的文件名
      mysqldump -u user_name -p123456 database_name > outfile_name.sql
  2卡塔尔国 导出多个表
      mysqldump -u 客商名 -p 数据库名 表名> 导出的文书名
      mysqldump -u user_name -p database_name table_name > outfile_name.sql
  3卡塔尔(قطر‎ 导出二个数据库构造
    mysqldump -u user_name -p -d –add-drop-table database_name > outfile_name.sql
    -d 十分的少 –add-drop-table 在种种create语句以前扩充三个drop table
  4卡塔尔(英语:State of Qatar) 带语言参数导出
    mysqldump -uroot -p –default-character-set=latin1 –set-charset=gbk –skip-opt database_name > outfile_name.sql
  比方,将aaa库备份到文件back_aaa中:
  [root@test1 root]# cd /home/data/mysql
  [root@test1 mysql]# mysqldump -u root -p --opt aaa > back_aaa

 

编辑:澳门新葡8522最新网站 本文来源:MySQL常用命令总结,常用命令

关键词: www8029com