1、系统管理

1.1 连接MySQL

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

  举例

  例1:连接到本机上的MySQL。

  首先在打开DOS窗口,然后进入目录 mysqlbin,再键入命令"mysql –u root –p",回车后提示你输密码,如果刚安装好MySQL,超级用户"root"是没有密码的,故直接回车即可进入到MySQL中了,MySQL的提示符是: mysql>。

  例2:连接到远程主机上的MYSQL。假设远程主机的IP为:110.110.110.110,用户名为root,密码为abcd123。则键入以下命令:

mysql -h 110.110.110.110 -u root –p abcd123

  备注:u与root可以不用加空格,其它也一样。

  退出MySQL命令: exit (回车)。

1.2 修改新密码

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

  举例

  例1:给root加个密码ab12。首先在DOS下进入目录mysqlbin,然后键入以下命令:

mysqladmin -u root -password ab12

  备注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。

  例2:再将root的密码改为djg345。

mysqladmin -u root -p ab12 password djg345

1.3 增加新用户

  备注:和上面不同,下面的因为是MySQL环境中的命令,所以后面都带一个分号";"作为命令结束符。

  格式:grant select on 数据库.* to 用户名@登录主机 identified by '密码'

  举例

  例1:增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MySQL,然后键入以下命令:

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

  或者

grant all privileges on *.* to test2@localhost identified by 'abc';

  然后刷新权限设置。

flush privileges;

  例2:如果你不想test2有密码操作数据库"mydb"里的数据表,可以再打一个命令将密码消掉。

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

1.4 启动停止MySQL

  1)Windows环境下

  首先进入DOS环境,然后进行下面操作。

  • 启动服务

net start mysql

  • 停止服务

net stop mysql

  2)Linux环境下

  • 启动服务

service mysql start

  • 停止服务

service mysql stop

2、数据库操作

2.1 库操作

  1)创建数据库

  命令:create database <数据库名>

  例如:建立一个名为xhkdb的数据库

mysql> create database xhkdb;

  2)显示所有的数据库

  命令:show databases (注意:最后有个s

mysql> show databases;

  3)删除数据库

  命令:drop database <数据库名>

  例如:删除名为 xhkdb的数据库

mysql> drop database xhkdb;

  4)连接数据库

  命令: use <数据库名>

  例如:如果xhkdb数据库存在,尝试存取它

mysql> use xhkdb;

  屏幕提示:Database changed

  5)查看当前使用的数据库

mysql> select database();

  6)当前数据库包含的表信息

mysql> show tables; (注意:最后有个s)

2.2 表操作

  备注:操作之使用"use <数据库名>"应连接某个数据库。

  1)建表

  命令:create table <表名> ( <字段名1> <类型1> [,..<字段名n> <类型n>]);

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

  2)获取表结构

  命令: desc 表名,或者show columns from 表名

mysql>DESCRIBE MyClass

mysql> desc MyClass;

mysql> show columns from MyClass;

  3)删除表

  命令:drop table <表名>

  例如:删除表名为 MyClass 的表

mysql> drop table MyClass;

  4)插入数据

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

  例如:往表 MyClass中插入二条记录,这二条记录表示:编号为1的名为Tom的成绩为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);

  5)查询表中的数据

  • 查询所有行

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

  例如:查看表 MyClass 中所有数据

mysql> select * from MyClass;

  • 查询前几行数据

  例如:查看表 MyClass 中前2行数据

mysql> select * from MyClass order by id limit 0,2;

  或者

mysql> select * from MyClass limit 0,2;

  6)删除表中数据

  命令:delete from 表名 where 表达式

  例如:删除表 MyClass中编号为1 的记录

mysql> delete from MyClass where id=1;

  7)修改表中数据

  命令:update 表名 set 字段=新值,… where 条件

mysql> update MyClass set name='Mary' where id=1;

  8)在表中增加字段

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

  例如:在表MyClass中添加了一个字段passtest,类型为int(4),默认值为0

mysql> alter table MyClass add passtest int(4) default '0'

  9)更改表名

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

  例如:在表MyClass名字更改为YouClass

mysql> rename table MyClass to YouClass;

  10)更新字段内容

  命令:update 表名 set 字段名 = 新内容

     update 表名 set 字段名 = replace(字段名,'旧内容','新内容');

  例如:文章前面加入4个空格

update article set content=concat('  ',content);

3、数据库导入导出

3.1 从数据库导出数据库文件

  使用"mysqldump"命令

  首先进入DOS界面,然后进行下面操作。

  1)导出所有数据库

  格式:mysqldump -u [数据库用户名] -p -A>[备份文件的保存路径]

  2)导出数据和数据结构

  格式:mysqldump -u [数据库用户名] -p [要备份的数据库名称]>[备份文件的保存路径]

  举例

  例1:将数据库mydb导出到e:\MySQL\mydb.sql文件中。

  打开开始à运行à输入"cmd",进入命令行模式。

c:\> mysqldump -h localhost -u root -p mydb >e:\MySQL\mydb.sql

  然后输入密码,等待一会导出就成功了,可以到目标文件中检查是否成功。

  例2:将数据库mydb中的mytable导出到e:\MySQL\mytable.sql文件中。

c:\> mysqldump -h localhost -u root -p mydb mytable>e:\MySQL\mytable.sql

  例3:将数据库mydb的结构导出到e:\MySQL\mydb_stru.sql文件中。

c:\> mysqldump -h localhost -u root -p mydb --add-drop-table >e:\MySQL\mydb_stru.sql

  备注:-h localhost可以省略,其一般在虚拟主机上用。

  3)只导出数据不导出数据结构

  格式:mysqldump -u [数据库用户名] -p -t [要备份的数据库名称]>[备份文件的保存路径]

  4)导出数据库中的Events

  格式:mysqldump -u [数据库用户名] -p -E [数据库用户名]>[备份文件的保存路径]

  5)导出数据库中的存储过程和函数

  格式:mysqldump -u [数据库用户名] -p -R [数据库用户名]>[备份文件的保存路径]

3.2 从外部文件导入数据库中

  1)使用"source"命令

  首先进入"mysql"命令控制台,然后创建数据库,然后使用该数据库。最后执行下面操作。

mysql>source [备份文件的保存路径]

  2)使用"<"符号

  首先进入"mysql"命令控制台,然后创建数据库,然后退出MySQL,进入DOS界面。最后执行下面操作。

mysql -u root –p < [备份文件的保存路径]

Hadoop集群(第10期副刊)_常用MySQL数据库命令的更多相关文章

  1. Hadoop集群(第11期)_常用MySQL数据库命令

    1.系统管理 1.1 连接MySQL 格式: mysql -h主机地址 -u用户名 -p用户密码 举例: 例1:连接到本机上的MySQL. 首先在打开DOS窗口,然后进入目录 mysqlbin,再键入 ...

  2. Hadoop集群(第10期)_MapReduce与MySQL交互

    2.MapReduce与MySQL交互 MapReduce技术推出后,曾遭到关系数据库研究者的挑剔和批评,认为MapReduce不具备有类似于关系数据库中的结构化数据存储和处理能力.为此,Google ...

  3. Hadoop集群(第10期)_MySQL关系数据库

    1.MySQL安装 MySQL下载地址:http://www.mysql.com/downloads/ 1.1 Windows平台 1)准备软件 MySQL版本:mysql-5.5.21-win32. ...

  4. Hadoop集群(第2期)_机器信息分布表

    1.分布式环境搭建 采用4台安装Linux环境的机器来构建一个小规模的分布式集群. 图1 集群的架构 其中有一台机器是Master节点,即名称节点,另外三台是Slaver节点,即数据节点.这四台机器彼 ...

  5. Hadoop集群(第5期)_Hadoop安装配置

    1.1 Hadoop简介 Hadoop是Apache软件基金会旗下的一个开源分布式计算平台.以Hadoop分布式文件系统(HDFS,Hadoop Distributed Filesystem)和Map ...

  6. Hadoop集群(第1期)_CentOS安装配置

    CentOS 是什么? CentOS是一个基于Red Hat 企业级 Linux 提供的可自由使用的源代码企业级的 Linux 发行版本.每个版本的 CentOS 都会获得七年的支持(通过安全更新方式 ...

  7. Hadoop集群(第7期)_Eclipse开发环境设置

    1.Hadoop开发环境简介 1.1 Hadoop集群简介 Java版本:jdk-6u31-linux-i586.bin Linux系统:CentOS6.0 Hadoop版本:hadoop-1.0.0 ...

  8. Hadoop集群(第1期)CentOS安装配置

    1.准备安装 1.1 系统简介 CentOS 是什么? CentOS是一个基于Red Hat 企业级 Linux 提供的可自由使用的源代码企业级的 Linux 发行版本.每个版本的 CentOS 都会 ...

  9. Ubuntu 14.10 下Ganglia监控Hadoop集群

    前提是已经安装好Ganglia和Hadoop集群 1 Master节点配置hadoop-metrics2.properties # syntax: [prefix].[source|sink|jmx] ...

随机推荐

  1. Sprite Kit 入门教程

    Sprite Kit 入门教程  Ray Wenderlich on September 30, 2013 Tweet 这篇文章还可以在这里找到 英语, 日语 If you're new here, ...

  2. 【bzoj1085】[SCOI2005]骑士精神

    1085: [SCOI2005]骑士精神 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 1757  Solved: 961[Submit][Statu ...

  3. linux 访问ntfs分区

    打开ntfs-3g的下载点http://www.tuxera.com/community/ntfs-3g-download/ ,将最新稳定(当前最新版本为ntfs-3g-2011.1.15)下载到Ce ...

  4. JS中的间歇(周期)调用setInterval()与超时(延迟)调用setTimeout()相关总结

    超时调用需要使用window.setTimeout(code,millisec)方法 它接受两个参数:要执行的代码和以毫秒表示的时间(即在执行代码前需要等待多少毫秒).其中第一个参数可以是一个包含JS ...

  5. HTTP message vs SOAP message

    HTTP Message / SOAP Message HTTP Message ===>包括Request, Response.我们主要关注的是 HTTP Message,这样子包含的范围会更 ...

  6. Apache CXF实现Web Service(2)——不借助重量级Web容器和Spring实现一个纯的JAX-RS(RESTful) web service

    实现目标 http://localhost:9000/rs/roomservice 为入口, http://localhost:9000/rs/roomservice/room为房间列表, http: ...

  7. poj 3684

    Physics Experiment Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 784   Accepted: 266 ...

  8. 同一网站不同和二级域名和不同子目录的cookie

    1.cookie二级域名的实现: 用户其中一个站点登录,而且可以各个子频道间切换,保持登录状态设置Cookie时,使用如下代码即可:setcookie(name,value,expire,path,& ...

  9. CSS 的overflow:hidden 属性详细解释

    overflow:hidden这个CSS样式是大家常用到的CSS样式,但是大多数人对这个样式的理解仅仅局限于隐藏溢出, 而对于清除浮动这个含义不是很了解.一提到清除浮动,我们就会想到另外一个CSS样式 ...

  10. poj 1733(带权并查集+离散化)

    题目链接:http://poj.org/problem?id=1733 思路:这题一看就想到要用并查集做了,不过一看数据这么大,感觉有点棘手,其实,我们仔细一想可以发现,我们需要记录的是出现过的节点到 ...