zoukankan      html  css  js  c++  java
  • MySql命令行基本操作

    在MySQL中的命令要以分号结尾

    1.连接数据库

    格式: mysql -h主机地址 -u用户名 -p用户密码  

    1、例1:连接到本机上的MYSQL。      首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql> 试验成功  由于无密码,用 mysql –uroot 亦可 
    2、例2:连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:       mysql -h110.110.110.110 -uroot -pabcd123     (注:u与root可以不用加空格,其它也一样)  

    3、连接时指定编码方式:  mysql -u用户名 -p用户密码 --default-character-set gb2312 

    4、退出MYSQL命令: exit (回车)

    2.修改密码

    格式:mysqladmin -u用户名 -p旧密码  password 新密码   

    1、例1:将root密码改为321(原始密码123) mysqladmin -uroot -p123 password 321

    2、例2:再将root的密码改为123。
    mysqladmin -uroot -p321 password 123

    3.添加用户

    格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码" 
     例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:    
    grant select,insert,update,delete on *.* to test1@"%" Identified by "abc";

    4.操作技巧

    1、如果你打命令时,回车后发现忘记加分号,你无须重打一遍命令,只要打个分号回车就可以了。也就是说你可以把一个完整的命令分成几行来打,完后用分号作结束标志就OK。  
    2、你可以使用光标上下键调出以前的命令。 

    5.显示数据库列表

    刚开始时才两个数据库:mysql和test。mysql库很重要它里面有MYSQL的系统信息

    6.显示数据库中的表(tables)

    use mysql; 
    show tables;

    7.显示数据表结构

    describe 表名; 

    8.创建数据库

    create database 数据库名;

    9.创建数据库中的表

    use 库名;  
    create table 表名 (字段设定列表);

    注:在建表中  
    (1)将ID设为长度为3的数字字段:int(3)并让它每个记录自动加一:auto_increment并不能为空:not null而且让他成为主字段primary key
    2)将NAME设为长度为10的字符字段   (3)将ADDRESS设为长度50的字符字段,而且缺省值为深圳。varchar和char有什么区别呢,只有等以后的文章再说了。 
    4)将YEAR设为日期字段。     如果你在mysql提示符键入上面的命令也可以,但不方便调试。你可以将以上命令原样写入一个文本文件中假设为school.sql,然后复制到c:下,并在DOS状态进入目录mysqlbin,然后键入以下命令:      mysql -uroot -p密码 < c:school.sql   如果成功,空出一行无任何显示;如有错误,会有提示。(以上命令已经调试,你只要将//的注释去掉即可使用)。

    可使用复合索引在同一个数据表里创建多个相互独立的自增序列,具体做法是这样的:为数据表创建一个由多个数据列组成的PRIMARY KEY OR UNIQUE索引,并把AUTO_INCREMENT数据列包括在这个索引里作为它的最后一个数据列。这样,这个复合索引里,前面的那些数据列每构成一种独一无二的组合,最末尾的AUTO_INCREMENT数据列就会生成一个与该组合相对应的序列编号。
        我们经常要用到唯一编号,以标识记录。在MySQL中可通过数据列的AUTO_INCREMENT属性来自动生成。MySQL支持多种数据表,每种数据表的自增属性都有差异,这里将介绍各种数据表里的数据列自增属性。
    1 用法:
    CREATE TABLE test
    (
    id INT UNSIGNED NOT NULL PRIMARY KEY AUTO_INCREMENT,
    username VARCHAR(15) NOT NULL
    )AUTO_INCREMENT = 100;
     
    可在建表时可用“AUTO_INCREMENT=n”选项来指定一个自增的初始值。
    可用alter table table_name AUTO_INCREMENT=n命令来重设自增的起始值。
     
    
    说明:
    (1)如果把一个NULL插入到一个AUTO_INCREMENT数据列里去,MySQL将自动生成下一个序列编号。编号从1开始,并1为基数递增。
    (2)把0插入AUTO_INCREMENT数据列的效果与插入NULL值一样。但不建议这样做,还是以插入NULL值为好。
    (3)当插入记录时,没有为AUTO_INCREMENT明确指定值,则等同插入NULL值。
    (4)当插入记录时,如果为AUTO_INCREMENT数据列明确指定了一个数值,则会出现两种情况,情况一,如果插入的值与已有的编号重复,则会出现出错信息,因为AUTO_INCREMENT数据列的值必须是唯一的;情况二,如果插入的值大于已编号的值,则会把该插入到数据列中,并使在下一个编号将从这个新值开始递增。也就是说,可以跳过一些编号。
    (5)如果用UPDATE命令更新自增列,如果列值与已有的值重复,则会出错。如果大于已有值,则下一个编号从该值开始递增。

    10.删除数据库和表

    drop database  库名;       
    drop table  表名; 

    11.清空表中记录

    delete from 表名; 

    12.向表中插入数据

    insert into 表名 values(各个字段的值);

    调用deccribe看看我们新建的表结构:

    13.显示表中记录

    select * from 表名;

    14.将文本数据转到数据库中 

    文本数据应符合的格式:字段数据之间用tab键隔开,null值用n来代替.  例:  
    3 rose 深圳二中 1976-10-10  
    4 mike 深圳一中 1975-12-23  
    数据传入命令 load data local infile "文件名" into table 表名;  
    注意:你最好将文件复制到mysqlbin目录下,并且要先用use命令打表所在的库。

      
    15. 备份数据库

    备注:命令在DOS的mysqlbin目录下执行 
      mysqldump --opt school>school.bbb  
    注释:将数据库school备份到school.bbb文件,school.bbb是一个文本文件,文件名任取,打开看看你会有新发现。

     

  • 相关阅读:
    beanstalkd 安装和配置
    vm虚拟机用批处理启动和关闭
    Windows设置VMware开机自动启动,虚拟机也启动
    批处理脚本学习笔记1--vmware虚拟机启停控制
    Shell中uname命令查看系统内核、版本
    SHELL脚本里执行的东西需要多次回车确认,怎么实现自动回车确认?
    eclipse下搭建shell脚本编辑器--安装开发shell的eclipse插件shelled
    如何进行shell脚本正确性测试
    robot framework
    loadrunner参数化数据分配方法
  • 原文地址:https://www.cnblogs.com/wangjiyuan/p/mysqlcaozuo.html
Copyright © 2011-2022 走看看