前言: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. DeNA/上海纵游通过使用AWS大量缩短新款游戏和服务的上线时间

    关于DeNA/上海纵游 DeNA 创立于1999年,是世界率先的网络服务公司,业务涵盖社交游戏.电子商务等领域.DeNA总部设于东京,现已于京证券交易所上市(交易代码:2432),在中国.美国.新加坡 ...

  2. 使用秘钥对登录Linux系统

    一,用密码登录系统,可能由于密码的简单或者其他原因造成被其他人登录,这样服务器可是很不安全的,为此我们可以使用秘钥登录系统. 二, 1,设置密钥对前,我们需要下载一个工具 https://the.ea ...

  3. C语言的面向对象设计 —— 对 X264/FFMPEG 架构探讨

    1.为什么要用C语言 直到今天,C语言虽然不是使用人数最多的语言了,但是C没有老去,在很多的核心系统代码里,依然跑的是设计精美的C,绝大多数的嵌入式开发核心库软件是C开发的,多数标准算法是基于标准C设 ...

  4. 【Java基础】单例模式

    单例模式:保证整个项目运作期间某一个对象有且只有一个. 主要有:1,饿汉式:2,懒汉式. class Singleton1//饿汉式 { private Singleton1(){}//先把构造方法私 ...

  5. SonarQube 项目配置文件

    费话不说,直接上代码: 需要注意的地方: 1. 每个项目的key不能重复. 2. 注意编码方式. 3. 注意分模块的写法. 4. 忽略源码文件的写法. # Required metadatasonar ...

  6. iOS 生成.a文件

    一.新建一个工程,选择Cocoa Touch Static Library. 二. 三. 四. 五. 六. 七. 八. 九. 十. 十一. 十二. 十三.打开终端,输入以下命令将真机和模拟器中的.a合 ...

  7. 从汇编看c++初始化列表初始化成员变量

    简略来说,编译器会对初始化列表按照成员变量的声明顺序重新一一排序,安插到构造函数中进行初始化操作,而且这些初始化操作在构造函数里面用户自己定义的任何代码之前. 下面是c++源码: class X { ...

  8. python运维开发(十五)----JavaScript

    内容目录: HTML补充 javascript HTML补充 1.display标签 display的inline-block 属性会自动带3px的宽度 <span style="di ...

  9. 今日哈工大刷推荐python脚本

    import httplib import random import time import urllib2 import re address = raw_input("Please i ...

  10. Esper

    https://www.igvita.com/2011/05/27/streamsql-event-processing-with-esper/ http://torycatkin.iteye.com ...