zoukankan      html  css  js  c++  java
  • MYSQL经常使用命令列表

    MYSQL经常使用命令列表

    1、系统管理

    mysql -h主机地址 -uusername -p 
    连接MYSQL(在mysql/bin)

    exit 
    退出MYSQL命令

    mysqladmin -uusername -p旧password password新password 
    改动password(在mysql/bin)

    grantselect[insert][,update][,delete]on数据库.*tousername@localhost("%", 表示不论什么主机)identifiedby "password" 
    添加用户

    mysqldump –u root –p opt数据库名>备份文件名称 
    备份数据库(在mysql/bin)

    mysql –u root –p < batch file (比如备份文件名称) 
    使用批处理

    mysql.server start 
    启动服务器

    mysql.server stop 
    停止服务器

    msql.server log


    2、查询命令

    select version() 
    查询版本

    select current_date 
    查询当前日期


    3、显示命令

    show databases 
    显示数据库列表

    show tables 显示库中的数据表

    describe 表名 显示数据表的结构

    select * from 表名 显示表中的记录

    select what_to_select from which table [whereconditions_to_satisfy and (or) where conditions_to_satisfy] 从一个表中检索数据『满足条件』

    select 字段1,字段2,… from 表名 显示特定列的值

    select * from 表名 order by 字段名 排序行

    select 字段1,包括字段2的运算式as 新字段 from 表名 字段值运算操作

    select 字段1 is null(is not null) 空值操作

    Select*from表名where字段名like(not like) “ 字符” 
    注: 同意使用“_”匹配不论什么单个字符, 而“%” 匹配随意数目字符 模式匹配

    Select * from表名where字段名regexp(not regexp)或者rlike(not rlike) “.”匹配不论什么单个的字符 一个字符类[…]匹配方框内不论什么字符。比如[a],[asd],[az] 匹配不论什么小写字母,[09] 匹配不论什么数

    字。 “*”匹配零个或者多个在它前面的东西。 正則表達式区分大写和小写[aA] 。 假设它出如今被測试值的不论什么地方,模式都匹配。 定位,在模式開始处用“^”,结尾处用“$”,比如“^b” 
    扩展正則表達式

    Select count(*) from 表名 
    Select 字段名,count(*) from 表名 group by 字段名 行计数


    4、编辑命令

    use database 库名 
    使用的数据库

    create database 库名 
    创建数据库

    create table 表名 
    在数据库中创建表

    insert into表名values (“data”,”data”) 
    向表中加入记录

    Load data infile “/path/filename” intotable 表名 
    从文件里向表加入数据, 文件每行包含一条记录, 用定位符(tab) 把值分开。

    drop database 库名 
    删除数据库

    drop table 表名 
    删除数据库中的表

    delete from表名where 
    删除数据库表中的记录

    Update表名set字段=”值” wherewhereconditions_to_satisfy 
    更新数据库表中记录的值

    Mysql数据库是一个多用户,多线程的关系型数据库,是一个客户机/server结构的应用程序。它是对个人用户和商业用户是免费的.

    Mysql数据库具有下面长处:

    1.同一时候訪问数据库的用户的数量不受限制

    2.能够保存超过5千万条的记录

    3.是眼下市场上现有数据库产品中执行速度最快的数据库系统

    4.用户权限设置简单、有效。

    Mysql数据库经常使用命令:

    启动Mysql数据库

    C:/>cd Mysql5.0/bin

    C:/Mysql5.0/bin>mysqld –install 安装Mysql服务

    C:/Mysql5.0/bin>net start mysql 启动Mysql服务

    请求的服务已经启动。

    连接mysql

    用户须要提供Mysql的username和password来连接server,假设server不是在本机,则还须要一个主机名或IP来指定server的位置。

    C:/Mysql5.0/bin>mysql -h localhost -u root -p

    Enter password: ****

    Welcome to the MySQL monitor. Commands end with ; or /g.

    Your MySQL connection id is 6 to server version: 5.0.18-nt

    Type 'help;' or '/h' for help. Type '/c' to clear the buffer.

    mysql>

    使用一条简单的查询语句

    mysql> select version(),current_date;

    mysql> select version();select now();

    新建或删除一个数据库

    Mysql>create database mydb;

    Mysql> drop database mydb;

    打开的数据库的命令

    mysql> use mysql

    Database changed

    查看数据库的命令

    mysql> show databases;

    查看数据表的具体结构

    mysql> desc func;

    新建数据库

    mysql> create database school;

    Query OK, 1 row affected (0.00 sec)

    新建表

    mysql> create table user01(

    -> id varchar(20) NOT NULL,

    -> userName varchar(10) NOT NULL,

    -> age int(11) default'0',

    -> sex char(2) NOT NULL default'm',

    -> PRIMARY KEY (id)

    -> )TYPE=InnoDB;

    Query OK, 0 rows affected, 1 warning (0.02 sec)mysql>desc student;

    插入和删除表中的数据

    Create table student(stuName varchar(20),age varchar(20),id varchar(20),set0 char(1));

    插入

    mysql> insert into student(id,stuName) values('1','tomcat');

    Query OK, 1 row affected (0.00 sec)

    删除

    mysql> delete from student where id='1';

    Query OK, 1 row affected (0.01 sec)

    删除表中全部数据

    mysql> truncate table student;

    Query OK, 1 row affected (0.01 sec)

    删除表

    mysql> create table temp(t varchar(1));

    Query OK, 0 rows affected (0.00 sec)

    mysql> drop table temp;

    Query OK, 0 rows affected (0.00 sec)

    创建新用户并给予权限

    mysql> grant all privileges on *.* to dbuser@localhost identified by '1234'

    with grant option;

    更改Mysql用户password

    c:/Mysql5.0/bin>mysqladmin -u root -p password 1234

    Enter password: ****

    备份数据库及表

    我们用mysqldump命令来备份数据库

    c:/mysql/bin/>mysqldump –u root –p 3306 mysql>d:/backup.sql

    运行此语句将把mydb 备份到D盘的backup.sql文件里

    备份多个数据库表

    c:/mysql/bin/>mysqldump –u root –p 3306 school user01 user >d:/backup.sql

    此句的意思是把school库中的user01表和user表的内容和表的定义备份到D盘backup.sql文件里。

    备份全部的数据库

    c:/myql/bin>mysqldump –u root –p 3306 –all –database>d:backup.sql

    还原Mysql数据库

    c:/mysql/bin/mysql –u root –p 3306 school

    还原当中的一个表

    mysql> source d:/books.sql;

    ERROR:

    Unknown command '/b'.

    Query OK, 0 rows affected (0.00 sec)

    Query OK, 1 row affected (0.00 sec)

    退出Mysql连接

    mysql>quit(exit)

    关闭mysql服务

    C:/mysql/bin>net mysql

    1、启动MySQLserver

    实际上上篇已讲到怎样启动MySQL。两种方法: 一是用winmysqladmin,假设机器启动时已自己主动执行,则可直接进入下一步操作。 二是在DOS方式下执行 d:mysqlbinmysqld

    2、进入mysql交互操作界面

    在DOS方式下,执行: d:mysqlbinmysql

    出现: mysql 的提示符,此时已进入mysql的交互操作方式。

    假设出现 "ERROR 2003: Can′t connect to MySQL server on ′localhost′ (10061)“,

    说明你的MySQL还没有启动。

    3、退出MySQL操作界面

    在mysql>提示符下输入quit能够随时退出交互操作界面:

    mysql> quit

    Bye

    你也能够用control-D退出。


    4、第一条命令

    mysql> select version(),current_date();

    +----------------+-----------------+

    | version() | current_date() |

    +----------------+-----------------+

    | 3.23.25a-debug | 2001-05-17 |

    +----------------+-----------------+

    1 row in set (0.01 sec)

    mysql>

    此命令要求mysqlserver告诉你它的版本和当前日期。尝试用不同大写和小写操作上述命令,看结果怎样。结果说明mysql命令的大写和小写结果是一致的。

    练习例如以下操作:

    mysql>Select (20+5)*4;

    mysql>Select (20+5)*4,sin(pi()/3);

    mysql>Select (20+5)*4 AS Result,sin(pi()/3); (AS: 指定假名为Result)

    5、多行语句

    一条命令能够分成多行输入,直到出现分号“;”为止:


    bordercolorlight = "black" bordercolordark = "#FFFFFF" align="center"> 

    mysql> select 
    -> USER() 
    -> , 
    -> now() 
    ->; 
    +--------------------+---------------------+ 
    | USER() | now() | 
    +--------------------+---------------------+ 
    ODBC@localhost | 2001-05-17 22:59:15 | 
    +--------------------+---------------------+ 
    1 row in set (0.06 sec) 
    mysql>

    注意中间的逗号和最后的分号的用法。

    6、一行多命令

    输入例如以下命令:

    mysql> SELECT USER(); SELECT NOW(); 
    +------------------+ 
    | USER() | 
    +------------------+ 
    ODBC@localhost | 
    +------------------+ 
    1 row in set (0.00 sec)

    +---------------------+ 
    | NOW() | 
    +---------------------+ 
    | 2001-05-17 23:06:15 | 
    +---------------------+ 
    1 row in set (0.00 sec) 
    mysql>

    注意中间的分号,命令之间用分号隔开。

    7、显示当前存在的数据库

    mysql> show databases; 
    +----------+ 
    | Database | 
    +----------+ 
    | mysql | 
    | test | 
    +----------+ 
    2 row in set (0.06 sec) 
    mysql>

    8、选择数据库并显示当前选择的数据库

    mysql> USE mysql 
    Database changed 
    mysql> 
    (USE 和 QUIT 命令不须要分号结束。) 
    mysql> select database(); 
    +---------------+ 
    | database() | 
    +---------------+ 
    | mysql | 
    +---------------+ 
    1 row in set (0.00 sec)

    9、显示当前数据库中存在的表 
    mysql> SHOW TABLES;

    10、显示表(db)的内容 
    mysql>select * from db;

    11、命令的取消

    当命令输入错误而又无法改变(多行语句情形)时,仅仅要在分号出现前就能够用 c来取消该条命令

    mysql> select 
    -> user() 
    -> c 
    mysql

    1、MySQL经常使用命令

    create database name; 创建数据库
    use databasename; 选择数据库
    drop database name 直接删除数据库,不提醒
    show tables; 显示表
    describe tablename; 表的具体描写叙述
    select 中加上distinct去除反复字段
    mysqladmin drop databasename 删除数据库前,有提示。
    显示当前mysql版本号和当前日期
    select version(),current_date;

    2、改动mysql中root的password:

    shell>mysql -u root -p
    mysql> update user set password=password(”xueok654123″) where user=’root’;
    mysql> flush privileges //刷新数据库
    mysql>use dbname; 打开数据库:
    mysql>show databases; 显示全部数据库
    mysql>show tables; 显示数据库mysql中全部的表:先use mysql;然后
    mysql>describe user; 显示表mysql数据库中user表的列信息);

    3、grant

    创建一个能够从不论什么地方连接server的一个全然的超级用户,可是必须使用一个口令something做这个

    mysql> grant all privileges on *.* to user@localhost identified by ’something’ with

    添加新用户
    格式:grant select on 数据库.* to username@登录主机 identified by “password”

    GRANT ALL PRIVILEGES ON *.* TO monty@localhost IDENTIFIED BY ’something’ WITH GRANT OPTION;
    GRANT ALL PRIVILEGES ON *.* TO monty@”%” IDENTIFIED BY ’something’ WITH GRANT OPTION;

    删除授权:

    mysql> revoke all privileges on *.* from root@”%”;
    mysql> delete from user where user=”root” and host=”%”;
    mysql> flush privileges;

    创建一个用户custom在特定clientit363.com登录,可訪问特定数据库fangchandb

    mysql >grant select, insert, update, delete, create,drop on fangchandb.* to custom@ it363.com identified by ‘ passwd’ 

    重命名表:

    mysql > alter table t1 rename t2;

    4、mysqldump

    备份数据库

    shell> mysqldump -h host -u root -p dbname >dbname_backup.sql

    恢复数据库

    shell> mysqladmin -h myhost -u root -p create dbname
    shell> mysqldump -h host -u root -p dbname < dbname_backup.sql

    假设仅仅想卸出建表指令,则命令例如以下:

    shell> mysqladmin -u root -p -d databasename > a.sql

    假设仅仅想卸出插入数据的sql命令,而不须要建表命令,则命令例如以下:

    shell> mysqladmin -u root -p -t databasename > a.sql

    那么假设我仅仅想要数据,而不想要什么sql命令时,应该怎样操作呢?

       mysqldump -T./ phptest driver

    当中,仅仅有指定了-T參数才干够卸出纯文本文件,表示卸出数据的文件夹,./表示当前文件夹,即与mysqldump同一文件夹。假设不指定driver 表,则将卸出整个数据库的数据。每一个表会生成两个文件,一个为.sql文件,包括建表运行。还有一个为.txt文件,仅仅包括数据,且没有sql指令。
    5、可将查询存储在一个文件里并告诉mysql从文件里读取查询而不是等待键盘输入。可利用外壳程序键入重定向有用程序来完毕这项工作。比如,假设在文件my_file.sql 中存放有查
    询,可例如以下运行这些查询:
    比如,假设您想将建表语句提前写在sql.txt中:

    mysql > mysql -h myhost -u root -p database < sql.txt

    转自:http://hi.baidu.com/ashinehan/blog/item/0ed8b2173cb94657f2de326b.html

  • 相关阅读:
    Map 嵌套存储Map
    LinkedList;以及迭代器Iterator
    计算某字符串中大写字母、小写字母以及数字的个数
    String字符串转多种类型及多种方法的应用
    String类的构造方法
    String类(附件)
    (五)Kubernetes集群安装
    (四)Kubernetes 网络通讯方式
    (三)Kubernetes-Pod概念
    (二)Kubernetes组件说明
  • 原文地址:https://www.cnblogs.com/yxwkf/p/4543841.html
Copyright © 2011-2022 走看看