前言:MySQL有很多的可视化管理工具,比如“mysql-workbench”和“sequel-pro-”。 现在我写MySQL的终端命令操作的文章,是想强化一下自己对于MySQL的理解,总会比使用图形化的理解透彻,因为我本来就比较喜欢写代码。同时写出来这些文章,是想要给大家当个参考,希望也能对大家有所帮助,有所提升,这就是我为什么要写终端操作MySQL的文章了。

以下命令基于笔者在Mac系统测试提供。

1、MySQL服务状态

1.1 启动MySQL

1.2 停止MySQL服务

1.3 重启MySQL服务

1.4 查看当前MySQL版本

2、更改MySQL的root管理员密码

3、MySQL终端登录

3.1 终端登录(繁琐)

3.2 终端登录(简化)

4、 MySQL数据库的导入和导出

4.1 导出数据库

4.2 导入数据库

4.3 还原数据库

1、MySQL服务状态

1.1 启动MySQL

$ sudo /Library/StartupItems/MySQLCOM/MySQLCOM start

需要输入管理员密码。

1.2 停止MySQL服务

 $ sudo /Library/StartupItems/MySQLCOM/MySQLCOM stop

只需把start改成stop即可。

1.3 重启MySQL服务

$ sudo /Library/StartupItems/MySQLCOM/MySQLCOM restart
Restarting MySQL database server

在我的MAC上,一般都只需要用restart的命令。

当然,除了上述使用终端去启动MySQL外。还有一个意外简单的方法,可以在“设置”里找到MySQL服务,并设置它的状态,开启或关闭。

1.4 查看当前MySQL版本

mysql> select version();
+-----------+
| version() |
+-----------+
| 5.6.20 |
+-----------+
1 row in set (0.00 sec)

2、更改MySQL的root管理员密码

例:把root账号的密码改成'123456':

✗ /usr/local/mysql/bin/mysqladmin -u root -p password 123456
Enter password:
Warning: Using a password on the command line interface can be insecure.

注意:需要知道账户的原密码才能进行修改。

3、MySQL终端登录

3.1 终端登录(繁琐)

首先使用以下命令查看路径,是否有有添加MySQL的路径:

$ echo $PATH

MySQL的运行路径:/usr/local/mysql/bin,如果你能在查询结果中找到这段字符,那么就是已添加进路径里。如没有,则需要把MySQL的运行路径添加进去。

添加MySQL运行路径:

$ PATH="$PATH":/usr/local/mysql/bin 

添加是否成功,我们可以使用which使用来查看:

$ which mysql
/usr/local/mysql/bin/mysql

若存在路径,则会输出mysql的运行路径,若不存在,则什么都不输出。

添加后,我们就能正常登录了:

$ mysql -u root -p

这里会要求输入密码,需要注意的是,这里的密码为MySQL的登录密码,非系统管理员的登录密码。

注意:每次关闭终端后,再重新打开终端,都要重新添加路径,你可以把这些命令当作是临时的。也就是说,这些命令会在终端关闭后失效。

3.2 终端登录(简化)

我们可以使用alias命令简化MySQL的终端登录操作,当然,如果你只是想要临时的话,你可以直接在终端输入alias <简化后的名字> <执行的命令>,这样做的话,只要你关闭终端后,刚刚进行过简化的命令就会失效。如果你想要让它始终存在,那么需要把alias指令添加到 ~/.bashrc(Ubuntu) 或者~/.bash_profile(MacOS)。

除了上述3.1的终端登录方法外,我们还可以使用MySQL的运行路径进行登录,像这样:

$ /usr/local/mysql/bin/mysql -u root -p
Enter password:

输入正确的密码后,就能正常操作MySQL了。

如果每次都要输入这么一长串的字符,那不是太繁琐了点?而且不容易记忆。在终端里,我们可以使用 alias 命令去简化:

$ alias mysql=/usr/local/mysql/bin/mysql

它的格式是:alias <简化后的名字>=<'具体的指令>

我们使用时就可以很简单:

$ mysql -u root -p
Enter password:

实在是太方便了。

但是这样做还不够,因为这个是暂时性的,只要我们关闭当前的终端窗口,所有简化的指令便会失效。所以我们需要把alias定义为全局的,我们可以在~/.bash_profile添加指令,前提是进入~/.bash_profile文件:

$ vi ~/.bash_profile 

编辑前:

export PATH="/Users/baijiawei/Library/Application Support/GoodSync":$PATH

编辑后:

export PATH="/Users/baijiawei/Library/Application Support/GoodSync":$PATH

# MySQL
alias mysql='/usr/local/mysql/bin/mysql';

#那一行代表是注释,我们一般还会在具体的命令加上单引号,就是前面我们提及到的“alias <简化后的名字>=<'具体的指令>”。

最后,要使~/.bash_profile文件生效,我们必须使用 source 命令:

$ source ~/.bash_profile

以后我们使用时,就不需要再输入那么多麻烦的指令了,So Easy。

我们可以在终端上直接输入alias查看已有的简化命令:

$ alias
alias mysql='/usr/local/mysql/bin/mysql'

4、 MySQL数据库的导入和导出

要想导入和导出数据库,我们需要用到mysqldump工具,接下来我会介绍它的导入和导出功能。这个工具在安装MySQL时就附带上了,在使用它之前,我们需要找到它的运行路径。幸好的是,我已经找到了:

/usr/local/mysql/bin/mysqldump

我们先不用着急怎样去使用它,我们先使用alias简化一下命令:

alias mysqldump='/usr/local/mysql/bin/mysqldump';

4.1 导出数据库

好了,现在我们来介绍它的用法吧,先来看看导出数据库时的格式:

mysqldump -u root -p <数据库名> <表名> > <导出的名字>.sql

来个实例说明:

$ mysqldump -u root -p test CLASS > class.sql
Enter password:

当然这些操作都是需要输入MySQL的管理员密码,也就是root的密码。另外,它是导出到终端的当前目录。提示:“我们可以使用pwd查看当前所在目录”。

导出带删除格式的数据库,还原时能够覆盖已有数据库而不用删除原有数据库:

mysqldump --add-drop-table e -u root -p testDB > TESTDB.sql

4.2 导入数据库

在已有的数据库导入数据,首先使用use命令进入到该数据库,然后:

mysql> source /Users//Documents/Code/class.sql

导入数据库的格式:source /<路径>/. <sql>.sql,你也可以导出为.dump文件

4.3 还原数据库

如果你误删了一些数据,又或者是更新数据时忘记指定where条件,或者你把数据表都删除了,你也可以把它们还原:

$ mysql -u root -p testDB < testDB.sql
Enter password:

当然,也是需要输入root密码。

博文作者:GarveyCalvin

博文出处:http://www.cnblogs.com/GarveyCalvin/

=======修改列名=============
oracle:
alter table 表名 rename column 现列名 to 新列名;
mysql:
alter table 表名 change column 现列名 新列名 varchar(10);

create table lxjtest like emp; #只复制表结构,没有数。
create table lxjtest2 as select * from emp; #复制表结构和数据。
alter table lxjtest add testcolumn varchar(10); #新增testcolumn列
alter table lxjtest add testcolumn2 after empno; #新增testcolumn2列在empno列之后

MySQL之终端(Terminal)管理MySQL(转)的更多相关文章

  1. MySQL之终端(Terminal)管理MySQL

    原文:MySQL之终端(Terminal)管理MySQL 前言:MySQL有很多的可视化管理工具,比如“mysql-workbench”和“sequel-pro-”. 现在我写MySQL的终端命令操作 ...

  2. MySql安装和基本管理&mysql语句

    MySql安装和基本管理   本章内容: mysql的安装.启动 mysql破解密码 统一字符编码 MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下 ...

  3. mysql 安装与基本管理

    目录 mysql 安装与基本管理 MySQL介绍 下载安装 登录设置密码 破解密码 统一字符编码 mysql参数配置 mysql 常用指令 mysql 安装与基本管理 MySQL介绍 MySQL是一个 ...

  4. mysql 用户及权限管理 小结

    MySQL 默认有个root用户,但是这个用户权限太大,一般只在管理数据库时候才用.如果在项目中要连接 MySQL 数据库,则建议新建一个权限较小的用户来连接. 在 MySQL 命令行模式下输入如下命 ...

  5. MySQL之终端(Terminal)管理数据库、数据表、数据的基本操作(转)

    MySQL有很多的可视化管理工具,比如“mysql-workbench”和“sequel-pro-”. 现在我写MySQL的终端命令操作的文章,是想强化一下自己对于MySQL的理解,总会比使用图形化的 ...

  6. Mac MAMP 使用终端shell操作mysql数据库

    在MAMP中已经集成了phpMyAdmin,可以很方便的管理mysql数据库,但是有的情况是phpMyAdmin不能做到的.比如,导入sql文件,当sql文件非常大(大于20MB)的时候,apache ...

  7. 使用 python 管理 mysql 开发工具箱 - 1

    Mysql 是一个比较优秀的开源的数据库,很多公司都在使用.作为运维人员,经常做着一些重复性的工作,比如创建数据库实例,数据库备份等,完全都可以使用 python 编写一个工具来实现. 一.模块 Co ...

  8. net Core 通过 Ef Core 访问、管理Mysql

    net Core 通过 Ef Core 访问.管理Mysql 本文地址:http://www.cnblogs.com/likeli/p/5910524.html 环境 dotnet Core版本:1. ...

  9. Macbook下安装管理MySQL

    下载安装MySQL 1.访问MySQL官网:http://dev.mysql.com/downloads/ 2.下载 MySQL Community Server: 3.Select Platform ...

随机推荐

  1. IOS 下雪动画

    #define SNOW_IMAGENAME @"snow" #define IMAGE_X arc4random()%(int)Main_Screen_Width #define ...

  2. 格而知之8:我所理解的Runtime(3)

    关联对象 14.使用Category对类进行拓展的时候,只能添加方法,而不适合添加属性(可以添加属性,也可以正常使用get方法和set方法,只是不会自动生成以下划线开头命名的成员变量). 可以通过关联 ...

  3. Longest Palindromic Substring-----最长回文子串

    首先讲讲什么是回文, 看看Wiki是怎么说的:回文,亦称回环,是正读反读都能读通的句子.亦有将文字排列成圆圈者,是一种修辞方式和文字游戏.回环运用得当.能够表现两种事物或现象相互依靠或排斥的关系, 比 ...

  4. Lazy方式单列模式,一种线程安全模式的新选择

      public class WeProxyClient {         private static readonly Lazy<WeProxyClient> list = new ...

  5. webapi单元测试时出现的ConfigurationManager.ConnectionStrings为空错误

    这个是读取配置文件没读到的问题,解决方法很简单,把webapi的配置文件复制到单元测试项目中,并把名字改为App.config即可. 同时 ,推荐使用Unit Test Genertor来做测试,这个 ...

  6. 使用SqlBulkCopy批量插入数据

    static void Main(string[] args) { //定义与目标表结构相同的DataTable DataTable dataTable = new DataTable(); data ...

  7. wcf 给net.tcp 加mex

    <?xml version="1.0" encoding="utf-8" ?><configuration>  <system.s ...

  8. dojo事件

    dojo.connect 和 dojo.disconnect /*建立连接*/ dojo.connect(/*Object|null*/ obj, /*String*/ event, /*Object ...

  9. URL & webkitURL

    base64带来的坑 在web中想要是实现图片在线预览的方式有几种 1.先上传 2.使用FileReader对象 3.URL.createObjectURL(file|blob) base64 能将图 ...

  10. Debian 使用杂记(一)

    前几天又冲动的把系统换成Linux了,最开始接触Linux是2010年,那时候买了个本本,预装的是ubuntu8.10,自此知道除了windows原来还有其它操作系统. 不记得什么时候开始知道ubun ...