4. 运行和关闭MySQL服务器
首先检查MySQL服务器正在运行与否。在资源管理器查看有没有mysqld的进程,如果MySQL正在运行,那么会看到列出来的 mysqld 进程。如果服务器没有运行,那么可以使用下面的命令来启动它:
D:\software\mysql-5.6.25-winx64\bin>mysqld
2015-07-30 22:59:20 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).
2015-07-30 22:59:20 0 [Note] mysqld (mysqld 5.6.25) starting as process 3028 ...
现在,如果想关闭已经运行的 MySQL 服务器,那么可以使用下面的命令做到这一点:
D:\software\mysql-5.6.25-winx64\bin>mysqladmin -u root -p shutdown
Enter password: ******

5、设置MySQL用户帐户
添加用户方式一:
要添加一个新用户到 MySQL,只需要在数据库中的新记录添加到用户表:mysql.user
下面是添加新用户:yiibai 的例子,给定 SELECT, INSERT 和 UPDATE权限并使用密码:yiibai123; SQL 查询是:
D:\software\mysql-5.6.25-winx64\bin> mysql -u root -p
Enter password:
mysql> use mysql;
Database changed
mysql> INSERT INTO user
(host, user, password,
select_priv, insert_priv, update_priv)
VALUES ('localhost', 'yiibai',
PASSWORD('123456'), 'Y', 'Y', 'Y');
Query OK, 1 row affected (0.20 sec)
mysql> FLUSH PRIVILEGES;
Query OK, 1 row affected (0.01 sec)
mysql> SELECT host, user, password FROM user WHERE user = 'yiibai';
+-----------+---------+------------------+
| host | user | password |
+-----------+---------+------------------+
| localhost | yiibai | *59A8740AAC5DBCB2907F38891BE42957F699CB77 |
+-----------+---------+------------------+
1 row in set (0.00 sec)
当要添加一个新用户,记得要PASSWORD()函数加密MySQL新使用的密码。正如在上面的例子中看到密码为mypass,进行加密后为:*59A8740AAC5DBCB2907F38891BE42957F699CB77
注意最后要使用 FLUSH PRIVILEGES 语句。 这告诉服务器重新加载授权表。如果不使用它,那么将无法使用新的用户帐户连接到MySQL服务器,至少在服务器重新启动后才可以。
也可以通过在用户设置表以下几列的值为'Y',指定给新用户的权限,在执行INSERT查询后,也可以在以后使用UPDATE查询更新它们:
• Select_priv
• Insert_priv
• Update_priv
• Delete_priv
• Create_priv
• Drop_priv
• Reload_priv
• Shutdown_priv
• Process_priv
• File_priv
• Grant_priv
• References_priv
• Index_priv
• Alter_priv
添加用户的方式二:
添加用户帐户的另一种方式是通过使用GRANT SQL命令; 下面的例子将增加用户zara 并使用密码zara123 为特定数据库:tutorials
D:\software\mysql-5.6.25-winx64\bin> mysql -u root -p password;
Enter password:
mysql> use mysql;
Database changed
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
-> ON tutorials.*
-> TO 'yiibai'@'localhost'
-> IDENTIFIED BY '123456';
这也将创建一条记录在MySQL数据库中的表: user
注意: MySQL不会终止命令,直到给一个分号(;)在SQL命令的结尾。

6.创建一个数据库
下面我们来创建一个数据库:tutorials,使用以下命令:
D:\software\mysql-5.6.25-winx64\bin> mysql -u root -p password;
Enter password:
mysql>create database tutorials default character set utf8 collate utf8_general_ci;

PS:设置默认字符集utf8, 排序方式使用utf8_general_ci;

添加用户帐户的另一种方式是通过使用GRANT SQL命令; 下面的例子将增加用户zara 并使用密码zara123 为特定数据库:tutorials
D:\software\mysql-5.6.25-winx64\bin> mysql -u root -p password;
Enter password:
mysql> use mysql;
Database changed
mysql> GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP
-> ON tutorials.*
-> TO 'yiibai'@'localhost'
-> IDENTIFIED BY '123456';
这也将创建一条记录在MySQL数据库中的表: user
注意: MySQL不会终止命令,直到给一个分号(;)在SQL命令的结尾。

7.my.ini 文件配置
大多数情况下,不需要去修改这个文件。默认情况下,它会具有以下项:
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
[mysql.server]
user=mysql
basedir=/var/lib
[safe_mysqld]
err-log=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
在这里,可以指定错误日志为其它的目录,否则不应该更改此文件中的任何内容。

8. 管理 mysql 命令
这里是重要的MySQL命令,经常在MySQL数据库的管理或工作中使用:
○ USE Databasename : 用于选择在MySQL工作区指定的数据库。
○ SHOW DATABASES: 列出了MySQL数据库管理系统中的所有可访问的数据库。
○ SHOW TABLES: 显示已经选择数据库中的表的命令。
○ SHOW COLUMNS FROM tablename: 显示属性,属性类型,关键信息,NULL是否被允许,默认值和其它的表信息。
○ SHOW INDEX FROM tablename: 提供所有索引的详细信息表,其中包括PRIMARY KEY.
○ SHOW TABLE STATUS LIKE tablename\G: 报告MySQL的数据库管理系统的性能和统计数据的详细信息。
○ SHOW TABLE STATUS FROM tablespace [ like tablename ] ;: 查看某一个数据库的某些表的详细信息。

9. 使用MySQL二进制连接MySQL
可以使用MySQL二进制在命令提示符下建立MySQL数据库的连接。
示例:
下面是一个简单的例子,从命令提示符连接MySQL服务器:
D:\software\mysql-5.6.25-winx64\bin> mysql -u root -p
Enter password:
注意,这里密码为空,直接回车就就进入mysql>命令提示符下,能够执行任何SQL命令。以下是上述命令的结果:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.25 MySQL Community Server (GPL)
Copyright (c) 2000, 2015, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or its affiliates. Other names may
be trademarks of their respective owners.
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
在上面的例子中,我们使用 root 用户,但可以使用任何其他用户。任何用户将能够执行所有的SQL操作(前提这个用户有对应执行SQL权限)。
任何时候使用exit命令在mysql>提示符下,从MySQL数据库断开。
mysql> exit
Bye

10. MySQL创建数据库
需要特殊权限创建或删除一个MySQL数据库。因此,假如有权使用 root 用户,就可以用mysql中的mysqladmin来创建数据库。
示例:
下面是一个简单的例子,创建名为 tutorials 的数据库。
D:\software\mysql-5.6.25-winx64\bin> mysqladmin -u root -p create tutorials
Enter password:<回车>

D:\software\mysql-5.6.25-winx64\bin> mysql -u root -p
Enter password:
mysql>create database yiibai_tutorials1;
mysql>create database yiibai_tutorials2;
这将创建一个MySQL数据库:yiibai_tutorials1   和 yiibai_tutorials2,使用下面命令查看结果:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| yiibai_tutorials1 |
| yiibai_tutorials2 |
+--------------------+
6 rows in set (0.00 sec)
11. MySQL删除数据库
需要特殊权限来创建或删除一个MySQL数据库。因此,假如你有机会获得root用户来登录,可以用mysql中mysqladmin二进制来创建任何数据库。
在删除任何数据库时要注意,因为删除数据库时所有的数据在数据库中。
下面是一个例子,用来删除前面的章节中所创建的数据库:

D:\software\mysql-5.6.25-winx64\bin> mysqladmin -u root -p drop yiibai_tutorials1
Enter password:******

这会给出一个警告,它会确认你是否真的要删除这个数据库或不删除。
Dropping the database is potentially a very bad thing to do.
Any data stored in the database will be destroyed.
Do you really want to drop the 'yiibai_tutorials1' database [y/N] y
Database "yiibai_tutorials1" dropped
或使用:
mysql> drop database yiibai_tutorials1;
Query OK, 0 rows affected (0.01 sec)

PS: 使用mysqladmin命令的时候,后面不能跟分号结尾。在mysql窗口中使用命令的时候必须以分号结尾。

使用下面命令看删除后,数据库的列表情况:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| test |
| yiibai |
+--------------------+
6 rows in set (0.00 sec)
连接到MySQL服务器后,则需要选择特定的数据库的来工作。这是因为可能有多个数据库可使用在MySQL服务器上。

12. 从命令提示符选择MySQL数据库
这是非常简单的,从MySQL>提示符下选择一个特定的数据库。可以使用SQL命令的 user 来选择一个特定的数据库。
示例:
下面是一个例子,选择数据库为 test :
D:\software\mysql-5.6.25-winx64\bin> mysql -u root -p
Enter password:
mysql> use test;
Database changed
mysql>
现在,我们已经选择 test 数据库,后续所有操作将在 test 数据库上执行。
注意: 所有的数据库名,表名,表中的字段名称是区分大小写的。所以,我们必须使用适当的名称,在给定任何SQL命令。

mysql学习笔记2--mysql的基本使用的更多相关文章

  1. 吴裕雄--天生自然MySQL学习笔记:MySQL 安装

    所有平台的 MySQL 下载地址为: MySQL 下载:https://dev.mysql.com/downloads/mysql/ 注意:安装过程我们需要通过开启管理员权限来安装,否则会由于权限不足 ...

  2. 吴裕雄--天生自然MySQL学习笔记:MySQL 运算符

    要介绍 MySQL 的运算符及运算符的优先级. MySQL 主要有以下几种运算符: 算术运算符 比较运算符 逻辑运算符 位运算符 算术运算符 MySQL 支持的算术运算符包括: 在除法运算和模运算中, ...

  3. 吴裕雄--天生自然MySQL学习笔记:MySQL 导入数据

    1.mysql 命令导入 使用 mysql 命令导入语法格式为: mysql -u用户名 -p密码 < 要导入的数据库数据(runoob.sql) 实例: # mysql -uroot -p12 ...

  4. 吴裕雄--天生自然MySQL学习笔记:MySQL 处理重复数据

    有些 MySQL 数据表中可能存在重复的记录,有些情况允许重复数据的存在,但有时候我们也需要删除这些重复的数据. 防止表中出现重复数据 可以在 MySQL 数据表中设置指定的字段为 PRIMARY K ...

  5. 吴裕雄--天生自然MySQL学习笔记:MySQL 临时表

    MySQL 临时表在我们需要保存一些临时数据时是非常有用的.临时表只在当前连接可见,当关闭连接时,Mysql会自动删除表并释放所有空间. MySQL临时表只在当前连接可见,如果使用PHP脚本来创建My ...

  6. 吴裕雄--天生自然MySQL学习笔记:MySQL 事务

    MySQL 事务主要用于处理操作量大,复杂度高的数据.比如说,在人员管理系统中,你删除一个人员,你即需要删除人员的基本资料,也要删除和该人员相关的信息,如信箱,文章等等,这样,这些数据库操作语句就构成 ...

  7. 吴裕雄--天生自然MySQL学习笔记:MySQL GROUP BY 语句

    GROUP BY 语句根据一个或多个列对结果集进行分组. 在分组的列上我们可以使用 COUNT, SUM, AVG,等函数. GROUP BY 语法 SELECT column_name, funct ...

  8. 吴裕雄--天生自然MySQL学习笔记:MySQL UNION 操作符

    MySQL UNION 操作符用于连接两个以上的 SELECT 语句的结果组合到一个结果集合中.多个 SELECT 语句会删除重复的数据. 语法 MySQL UNION 操作符语法格式: SELECT ...

  9. 吴裕雄--天生自然MySQL学习笔记:MySQL 连接

    使用mysql二进制方式连接 您可以使用MySQL二进制方式进入到mysql命令提示符下来连接MySQL数据库. 实例 以下是从命令行中连接mysql服务器的简单实例: [root@host]# my ...

  10. 吴裕雄--天生自然MySQL学习笔记:MySQL 管理

    启动及关闭 MySQL 服务器 Windows 系统下 在 Windows 系统下,打开命令窗口(cmd),进入 MySQL 安装目录的 bin 目录. 启动: cd c:/mysql/bin mys ...

随机推荐

  1. TensorFlowIO操作(一)----线程和队列

    线程和队列 在使用TensorFlow进行异步计算时,队列是一种强大的机制. 为了感受一下队列,让我们来看一个简单的例子.我们先创建一个“先入先出”的队列(FIFOQueue),并将其内部所有元素初始 ...

  2. 如何为Failover Cluster添加Quorum disk

    无废话, 上图.

  3. JS中字符串的相关操作

    一.字符串的创建 创建一个字符串有几种方法.最简单的是用引号将一组字符包含起来,可以将其赋值给一个字符串变量. var myStr = "Hello, String!"; 可以用双 ...

  4. ZeroClipboard及其原理介绍

    系列教程地址:http://www.365mini.com/page/zeroclipboard-2_x-quick-start.htm ZeroClipboard 是国外大神开发的一个用于剪贴板复制 ...

  5. java设计模式3--单例模式(Singleton)

    本文地址:http://www.cnblogs.com/archimedes/p/java-singleton-pattern.html,转载请注明源地址. 单例模式 保证一个类仅有一个实例,并提供一 ...

  6. Android -- 再来一发Intent

    之前写过一篇Intent的博客,主要说了一下隐式意图. 传送门:<Android -- Intent> Intent对象构成 Component name.Action.Data.Cate ...

  7. Android -- Service的开启关闭与生命周期

    Service是Android 系统中的四大组件之一,是在一段不定的时间运行在后台,不和用户交互应用组件. service可以在很多场合的应用中使用,比如播放多媒体的时候用户启动了其他Activity ...

  8. Android:Volley源代码解析

    简单实例 Volley是一个封装HttpUrlConnection和HttpClient的网络通信框架,集AsyncHttpClient和Universal-Image-Loader的长处于了一身.既 ...

  9. android中可以使用bitmap的平铺,镜像平铺等减小图片带来的apk过大的问题

    bitmap的平铺.镜像drawable文件夹中新建bitmap,其中的tileMode属性 tileMode 属性就是用于定义背景的显示模式:  disabled  默认值,表示不使用平铺  cla ...

  10. 【PAT】1028. List Sorting (25)

    题目链接:http://pat.zju.edu.cn/contests/pat-a-practise/1028 题目描述: Excel can sort records according to an ...