linux程序设计——MySQL管理(第八章)

58 篇文章 0 订阅
57 篇文章 9 订阅

8.2 MySQL管理

包含MySQL发行版中的一些有用的工具程序使管理工作变得更加容易,它们中最常用的是mysqladmin程序。

8.2.1 命令

除了mysqlshow命令以外,所有的MySQL命令都接受下面的3个标准参数。
命令选项    参数    说明
-u          用户名  在默认情况下,mysql工具会尝试把当前linux的用户名作为MySQL的用户名,-u参数可以指定不同的用户名。
-p          密码    如果给出了-p参数但是未提供密码,系统会提示输入密码。

-h          主机名  用于连接位于不同主机上的服务器(这个参数对于本地服务器总是可以省略)
1.myisamchk命令
myisamchk工具是设计用来检查和修复使用默认MYISAM表格式的任何数据表,MYISAM表格由MySQL自身支持。通常情况下,myisamchk应该以安装时创建的mysql用户身份来运行,并且运行该命令时应该位于数据表所处的目录中。为了检查数据库,首先执行命令su mysql,然后改变目录到与数据库名称对应的目录下。例如:
myisamchk -e -r *.MYI
myisamchk最常见的命令选项如下:
命令选项    说明
-c          检查表以发现错误
-e          执行扩展检查
-r          修复发现的错误
2.mysql命令
这是MySQL一个主要的且功能非常强大的命令行工具。几乎每个管理或用户级别的任何都可以在这里执行。可以从命令行启动mysql,通过在命令行的最后添加数据库名称作为参数,就无需在MySQL的控制台中使用use<database>命令。例如,以用户名rick、提示输入密码、默认使用数据库foo来启动控制台的命令如下所示:
$mysql -u rick -p foo
如果在启动MySQL时未指定数据库,可以在MySQL中使用use<databasename>选项来选择一个数据库。
另外,可以通过非交互模式来运行mysql,只需要绑定命令到一个输入文件中并从命令行读取它即可。在这种情况下,必须在命令行上指定密码:
$mysql -u rick --password=secretpassword foo < sqlcommands.sql
一旦mysql读取并处理完命令,它就会返回到命令提示符。
mysql服务器支持同时拥有许多不同的数据库这一想法,所有的数据库都由同一个服务器进程来服务和管理。每个数据库都是一个基本独立的表格集。这样可以针对不同的目的建立不同的数据库,并为每个数据库指定不同的用户,而只需要使用同一个数据库服务器就可以有效地管理它们。只要拥有适当的权限,就可以通过使用use命令在不同的数据库之间进行切换。
特定数据库mysql是由MySQL安装自动创建的,它用于保存如用户和权限这样的数据。
3.mysqladmin
这是快速进行MySQL数据库管理的工具。除了常见的参数以外,还支持以下命令:
命令                    说明
create <databasename>   创建一个新数据库
drop <databasename>     删除一个数据库
password <new_password> 修改密码
ping                    检查服务器是否正在运行
reload                  重载控制权限的grant表
status                  提供服务器的状态
shutdown                停止服务器
variable                显示控制MySQL操作的变量及其当前值
version                 提供服务器的版本号以及它持续运行的时间
如果不带参数调用mysqladmin命令,可以从命令提示符下看到完整的选项列表。
4.mysqlbug
5.mysqldump
这是一个极其有用的工具,它允许以SQL命令集的形式将部分或整个数据库导出到一个单独文件中,该文件能被重新导入MySQL或其他的SQL RDBMS。它接受标准用户和密码信息作为参数,也接受数据库名和表名作为参数。
命令                说明
--add-drop-table    添加SQL命令到输出文件,以在创建表的命令之前丢弃(删除)任何表
-e                  使用扩展的insert语法。
-t                  只转储表中的数据,而不是用来创建表的信息
-d                  只转储表结构,而不是实际数据
这个工具对于迁移数据或快速备份非常有用。此外,由于MySQL的客户段服务器实现方式,通过使用一个安装在不同机器上的mysqldump客户端,它甚至可以用来实现远程备份。下面这个例子显示通过用户名rick进行连接,转储数据库myplaydb的例子:
$ mysqldump -u rick -p myplaydb > myplaydb.dump
6.mysqlimport
mysqlimport命令用于批量将数据导入到一个表中,通过使用mysqlimport,可以从一个输入文件中读取大量的文本数据。这个命令唯一的参数需求是一个文件名和一个数据库名。
7.mysqlshow
这个小工具用来快速了解MySQL安装及其组成数据库的信息
1.不提供参数,它列出所有可用的数据库
2.以一个数据库为参数,它列出该数据库中的表
3.以数据库和表名为参数,它列出表中的列
4.以数据库、表和列为参数,它列出指定列的详细信息


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值