MySQL学习笔记1:初涉MySQL

前言:
MySQL是一个开源的关系型数据库管理系统。windows下,MySQL有2种安装方式:
》MSI安装(Windows Installer)
》ZIP安装
对于初学者,推荐MSI安装。。。
MySQL目录结构如下:
bin目录,存储 可执行文件
data目录,存储 数据文件(可以将创建的数据库文件和索引文件都存储在这里)
docs,文档
include目录,存储 包含的头文件
lib目录,存储 库文件
share,错误消息和字符集文件

正文:

1》安装MySQL5.5(此处不再赘述)
2》MySQL的(手动)配置选项
在安装目录下,找到配置文件:my.ini ,修改如下几个地方:
[mysql]
default-character-set=utf8 #编码方式修改为utf8
[mysqld]
character-set-server=utf8  #编码方式修改为utf8
3》启动/关闭MySQL服务
首先,以管理员身份运行CMD。
net start mysql #启动MySQL服务
net stop mysql  #关闭MySQL服务
4》MySQL登录/退出
mysql -V  #(--version)输出MySQL的版本信息并且退出
mysql --version #输出MySQL的版本信息并且退出
mysql -uroot -p123456 -P3306 -h127.0.0.1 #用户root,密码123456,MySQL默认的端口号3306,默认连接到本地服务器。(这是第一种登录方法)
C:\Windows\system32>mysql -uroot -p #第二种登录方法(回车后,输入密码)
Enter password: ******
MySQL退出(下面3种方法,均可)
mysql > exit;
mysql > quit;
mysql > \q;
-----------------------------------------------
参数                   描述                    
-D,--database=name     打开指定数据库          
--delimiter=name       指定分割符              
-h,--host=name         服务器名称              
-p,--password[=name]   密码                    
-P,--port=#            端口号                  
--prompt=name          设置提示符              
-u,--user=name         用户名                  
-V,--version           输出版本信息并且退出    
-----------------------------------------------
5》修改MySQL提示符
连接客户端时通过参数指定
C:\Windows\system32>mysql -uroot -p123456 --prompt \h  # \h表示服务器的名称
连接上客户端后,通过prompt命令修改
mysql> prompt mysql>>
PROMPT set to 'mysql>>'
mysql>>

MySQL比较简单的提示符
\D 完整的日期(Date)
\d 当前数据库 (database)
\h 服务器名称 (host)
\u 当前用户   (user)
mysql>prompt \u@\h \d:
PROMPT set to '\u@\h \d:'
root@localhost (none):   #当前没有打开任何一个数据库,所以为none
root@localhost (none):use test  #打开系统的test数据库
Database changed

root@localhost test:  #此时,none变成了test

6》MySQL常用命令
显示当前服务器版本 SELECT VERSION();
root@localhost test:SELECT VERSION();
+-----------+
| VERSION() |
+-----------+
| 5.5.37    |
+-----------+
1 row in set (0.00 sec)

显示当前日期时间 SELECT NOW();
root@localhost test:SELECT NOW();
+---------------------+
| NOW()               |
+---------------------+
| 2016-09-21 11:14:18 |
+---------------------+
1 row in set (0.00 sec)

显示当前用户 SELECT USER();
root@localhost test:SELECT USER();
+----------------+
| USER()         |
+----------------+
| root@localhost |
+----------------+
1 row in set (0.00 sec)
7》MySQL语句的规范
关键字与函数名称 全部大写。
数据库名称,表名称,字段名称 全部小写。
SQL语句必须以分号结尾。

8》创建数据库
MySQL安装成功后,默认自带了4个数据库,如下:
mysql> SHOW DATABASES; #查看当前服务器下,数据库列表(此时的数据库都是自带的!)
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.00 sec)
创建数据库语法:{ }内的是必选的,| 表示选择其中的1个或多个,[ ]内的是可选的;
CREATE {DATABASE | SCHEMA} [IF NOT EXISTS] db_name [DEFAULT] CHARACTER SET [=] charset_name
例如:
mysql> CREATE DATABASE t1; #创建数据库t1(采用默认的字符集utf8)
Query OK, 1 row affected (0.00 sec)
mysql> CREATE DATABASE t1; #数据库t1,已经存在;产生错误信息;
ERROR 1007 (HY000): Can't create database 't1'; database exists
mysql> CREATE DATABASE IF NOT EXISTS t1;#数据库t1,已经存在;没有产生错误,但产生了警告!
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> SHOW WARNINGS; #查看上述警告信息
+-------+------+---------------------------------------------+
| Level | Code | Message                                     |
+-------+------+---------------------------------------------+
| Note  | 1007 | Can't create database 't1'; database exists |
+-------+------+---------------------------------------------+
1 row in set (0.00 sec)
mysql> SHOW CREATE DATABASE t1; #显示 创建数据库t1时,所使用的指令。(注意字符集)
+----------+-------------------------------------------------------------+
| Database | Create Database                                             |
+----------+-------------------------------------------------------------+
| t1       | CREATE DATABASE `t1` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-------------------------------------------------------------+
1 row in set (0.00 sec)
mysql> CREATE DATABASE IF NOT EXISTS t2 CHARACTER SET gbk; #创建数据库t2,(采用指定的字符集gbk)
Query OK, 1 row affected (0.00 sec)
mysql> SHOW CREATE DATABASE t2; #显示 创建数据库t2时,所使用的指令。(注意字符集)
+----------+------------------------------------------------------------+
| Database | Create Database                                            |
+----------+------------------------------------------------------------+
| t2       | CREATE DATABASE `t2` /*!40100 DEFAULT CHARACTER SET gbk */ |
+----------+------------------------------------------------------------+
1 row in set (0.00 sec)

9》修改数据库
ALTER {DATABASE | SCHEMA} [db_name] [DEFAULT] CHARACTER SET [=] charset_name
mysql> ALTER DATABASE t2 CHARACTER SET = utf8; #将数据库t2的字符集修改为utf8
Query OK, 1 row affected (0.00 sec)
mysql> SHOW CREATE DATABASE t2; #查看数据库t2的字符集(确实被修改成了utf8)
+----------+-------------------------------------------------------------+
| Database | Create Database                                             |
+----------+-------------------------------------------------------------+
| t2       | CREATE DATABASE `t2` /*!40100 DEFAULT CHARACTER SET utf8 */ |
+----------+-------------------------------------------------------------+
1 row in set (0.00 sec)
10》删除数据库
DROP {DATABASE | SCHEMA} [IF EXISTS] db_name
mysql> DROP DATABASE t1; #删除数据库t1
Query OK, 0 rows affected (0.01 sec)
mysql> SHOW DATABASES;#查看当前服务器下,数据库列表(可以看到数据库t1,已经被删除了)
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| t2                 |
| test               |
+--------------------+
5 rows in set (0.00 sec)

mysql> DROP DATABASE t1; #删除数据库t1,产生错误,因为数据库t1不存在
ERROR 1008 (HY000): Can't drop database 't1'; database doesn't exist
mysql> DROP DATABASE IF EXISTS t1; #删除数据库t1,但此时数据库t1不存在;没有产生错误,但产生了警告;
Query OK, 0 rows affected, 1 warning (0.00 sec)

mysql> SHOW WARNINGS;#查看上述警告信息
+-------+------+--------------------------------------------------+
| Level | Code | Message                                          |
+-------+------+--------------------------------------------------+
| Note  | 1008 | Can't drop database 't1'; database doesn't exist |
+-------+------+--------------------------------------------------+
1 row in set (0.00 sec)


(完)


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值