前言: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. Tomcat可以在eclipse里启动,可是不能訪问首页的问题

    今天在使用eclipse的时候发现一个问题.就是我在eclipse里面已经启动了tomcat.部署上去的项目也能够启动,可是就是没法訪问tomcat的首页.port等等都没有问题. 后来查到解决方式, ...

  2. CTSC1999补丁VS错误题解

    题目描写叙述 Description 错误就是人们所说的Bug.用户在使用软件时总是希望其错误越少越好.最好是没有错误的.可是推出一个没有错误的软件差点儿不可能,所以非常多软件公司都在疯狂地发放补丁( ...

  3. SpringMVC的值传递

    值的传递分为从页面传到到controller和从controller传递到页面,下面分别进行介绍: package com.springmvc.web; import java.util.Map; i ...

  4. Java web项目

    前言 本文目标:使用eclipse为IDE环境搭建一个基于maven的web项目,讲解搭建过程,项目结构,程序运行.调试和测试过程,并使用maven作为持续集成工具.     面向对象:转型java的 ...

  5. net 2.0使用ajax

    asp.net ajax中用到了几个dll文件,这些可以从网上下载.http://ajax.asp.net站点下可以找到相关的下载.这其中包括:System.Web.Extensions.dll.Sy ...

  6. AspnetPager放在UpdatePanel中,回到顶部。

    最近在做一个项目时,使用了AspNetPager分页控件进行分页,为了防止点击下一页时搜索条件消失掉,使用了UpdatePanel来进行局部刷新. 由此引发了一个问题,即点击某一页时,页面没有返回到顶 ...

  7. win10下安装通过Hyper-v安装Ubuntu

    一直也来在做C#的开发,Winform及Web都有所涉及,想在闲暇之余学习下Python,拓展一下自己的知识.既然决定学习Python那么就直接在Linux下进行吧,由于Ubuntu最近很火而且也有方 ...

  8. typedef和define的作用域

    typedef: 如果放在所有函数之外,它的作用域就是从它定义开始直到文件尾: 如果放在某个函数内,定义域就是从定义开始直到该函数结尾: #define: 不管是在某个函数内,还是在所有函数之外,作用 ...

  9. Activity之间的跳转

    /* * 触发按钮bt1跳转到另一个Activity */ bt1.setOnClickListener(new OnClickListener() { @Override public void o ...

  10. JAVA中List与Array之间互换

    1.Array转List ArrayList<String> list = new ArrayList<String>(); String[] arr = new String ...