Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1155774
  • 博文数量: 150
  • 博客积分: 2739
  • 博客等级: 少校
  • 技术积分: 2392
  • 用 户 组: 普通用户
  • 注册时间: 2010-12-07 12:28
文章分类

全部博文(150)

文章存档

2015年(2)

2014年(16)

2013年(10)

2012年(58)

2011年(64)

分类: Mysql/postgreSQL

2011-09-02 20:51:46

数据库:数据管理软件,数据

 

数据库发展:层次模型-------------网状模型----------------关系模型-------------对象-关系模型

 

DBMS: 数据库管理系统

RDBMS:关系型数据库管理系统

        数据库的常用功能:

Managing storage:数据存储

Maintaining security:安全管理

Maintaining metadata:管理原数据

Managing  transactions 管理事务

Supporting connectivity:检索

Optimizing performance:性能优化

Providing back-up and recovery mechanisms:提供备份和恢复

Processing request for data retrieval and modification:提供数据检索和修改的请求

 

DataBase:开发DBA:主要工作:数据库设计,存储过程,存储函数,触发器

         管理DBA:数据库的升级、备份、恢复、安装、卸载,用户管理,安全管理,架构设计

SQL 结构化查询语言

查询 语句:select , update , delete

 

ANSI  SQL 标准: SQL-86--------SQL-89--------SQL-92--------SQL-99--------SQL-2003

                Core SQL

 

 

RDBMS: 大型 Oracle , Sybase , Informix , DB2   中型: SQL Server  开源MySQLPostgreSQLà EnterpriseDB

 

MySQL  Community 社区版 免费

MySQL  Enterprise  企业版  收费

 

客户端连接器:Connectors连接器:

Native C API JABC, ODBC,  .NET, PHP , Perl , Python, Ruby,  Cobol

DML  数据操作语言 DDL 数据定义语言  parser 分析器 optimizer

pluggable storage engines 存储引擎

 

一般安装需要的软件包,打对号的是需要安装的,其他的依情况

 

linuxMysql启动次序:     

如果启动时my.cnf都找到,则以他们的和,如果前者和后者冲突则,以后者为准, 如果mysql home没有设置则自动设置为basedir

 

windows mysql 启动次序:

MySQL安装完后默认生成5个用户分别是: ,  root@localhost , root@hostname , 两匿名用户 ‘’@localhost ,  ‘’@hostname

SHOW TABLES 查看数据库表

use mysql 更改默认某个数据库(如mysql

DESC 表名  查看表内容

SELECT * FROM 表名  查看表信息

FLUSH PRIVILEGES 立即生效

SELECT DATABASE() 显示当前默认数据库

DROP DATABASES 数据库表名  删除某个表

SHOW CHARACTER SE\C 显示支持的字符集

SHOW COLLATION  现在字符集

SHOW CURRENT_DATE 显示日期

SHOW CURRENT_DATETIME()  显示时间

SHOW WARNINGS 查看警告

SHOW ENGINES 显示存储引擎

SHOW VARIABLES LIKE “%sql_mode%” 模式

SET sql_mode=         设置模式

 例:SET sql_mode=”STRICT_all_tables” 严格模式,

     常用的模式: ANSI 只能使用单引号 STRICT_ALL_TABLES严格模式,禁止非法数据插入; TRADITIONAL 默认模式

 

mysql变量类型:

 全局变量: 对每一个新建的会话都生效

会话变量:只对当前会话有效

      SHOW GLOBAL VARIALES 全局会话显示

      SHOW SESSION VARIABLES 当前会话显示

例:     SHOW GLOBAL VARIALES LIKE “%time%” 在全局中查含time字符

 

mysql> CREATE DATABASE IF NOT EXISTS aa; 如果不存在aa则创建,脚本中用

mysql> CREATE DATABASE IF NOT EXISTS aa CHARACTER SET ‘gbk’; 创建aa字符集为gbk

mysql> SHOW CREATE DATABASE aa; 查看创建aa的命令

 mysql> DROP DATABASE IF EXISTS aa; 存在aa则删除

改变:

   mysql>

 

 

主键: key :侯选键 ;主键 primary key ; 唯一键 unique key ;外键 foreign key

 

 

 

设置密码:共有三种:

  # mysqladmin –uroot –hlocalhost password ‘redhat’

    mysql> SET PASSWORD FOR ‘root’@’host_name’=   PASSWORD(‘’);

    mysql > UPDATE mysql.user SET Password=PASSW(‘REDHAT’ WHERE User=’root’ and Host=’127.0.0.1’;

授权: GRANT ALL PRIVILEGES ON *.* TO root@’%’ IDENTIFIED BY ‘redha’

       FLUSH PRIVIEGES;

 登录mysql

mysql –uroot –h 127.0.0.1 –p

常用选项: --user=  --password=  --host=  --protocol (tcp ,socket, )  -D db_name

           这样连接需要输入密码,如要不输入密码可以在.my.cf中加入以下内容:

                     [client]

                      user=root

                      password=redhat 

删除用户: DROP USER ‘’@localhost’root’@localhost

忘记密码解决方法:

          #service mysqld stop

          # mysqld_safe --user=mysql --skip-grant-tables --skip-networking &

          #mysql

       mysql> SET PASSWORD FOR ‘root’@’host_name’=   PASSWORD(‘’);

 

Linux中执行批处理文件: # mysql –uroot –p < test.sql   test.sql写数据脚本

            mysql> SOURCE /root/test.sql

注:在mysql中写完一条命令需要用分号结尾,表示在服务端执行,不加分号在客户端执行

 

MySQL常用的客户端工具:mysql

 

 

数据库对象:

        表, 索引,视图,触发器,存储过程,存储函数,事件调度器,游标,用户

 

 \q 退出mysql  \h 帮助  \c 取消命令  \d 重新定义结束符  \g 忽略结束符 \G 竖排显示

 -E设置默认使用竖排显示

    

             #mysql –e “SHOW DATABASES” Shell中执行MySQL命令

             #mysql –e “SELECT User, Host,Password FROM mysql.user;”  这里必须加mysql.字符,否则会出错

光标跳转:  Ctrul-e   Ctrul-a  Ctrul-u  Ctrul-y  Ctrl-w

 命令补全功能: mysql> \# rehash打开补全功能

 

mysqladmin –uroot –p ping  测试状态              mysqladmin drop 删除数据库

mysqladmin debug 日志                  mysqladmin create sample 常见sample数据库

mysqladmin extended-status 显示mysql运行状态  mysqladmin flush-hosts 手动刷新日志

mysqladmin flush-privileges 刷新权限           mysqladmin flush-tables

mysqladmin processlist查看当前连接状态           mysqladmin reload

mysqladmin shutdown 关闭数据库               mysqladmin start-slave 从服务器启动

mysqladmin status  显示状态                    mysqladmin stop-slave 从服务器关闭

mysqladmin version 现在版本

       mysqladmin status –sleep 3 –count 2 3秒,显示2

MySQL图形化工具: SQLyog , MySQL Front , phpMyAdmin , MySQL Query Browser, MySQL Administartor ,  MySQL Workbench 

阅读(3498) | 评论(0) | 转发(0) |
0

上一篇:MYSQL--语法

下一篇:mysq-权限设定

给主人留下些什么吧!~~