分类目录归档:db

sqlserver 内部函数、存储过程、角色

/*日期函数*/
DATEADD ( datepart , number, date )
--在向指定日期加上一段时间的基础上,返回新的 datetime 值。
DATEDIFF ( datepart , startdate , enddate )
--返回跨两个指定日期的日期和时间边界数。
DATENAME ( datepart , date )
--返回代表指定日期的指定日期部分的字符串。
DATEPART ( datepart , date )
--返回代表指定日期的指定日期部分的整数。
DAY ( date )
--返回代表指定日期的天的日期部分的整数。
... 继续阅读

发表在 db | 标签为 | sqlserver 内部函数、存储过程、角色已关闭评论

SQL Server 错误日志

sp_cycle_errorlog

 

错误日志文件暴增:

这里我说的不仅仅指某个错误日志记录文件暴增,也指目录Program Files\Microsoft SQL Server\MSSQL.n\MSSQL\LOG所占空间暴增,如果你平时都不关注这些错误日志,也从不维护错误日志记录文件,那么很有可能它所占的空间非常大,大到让你吃惊的地步。几十G的我也见过,那么具体原因可能有以下种:

 1:SQL 内部错误的时候会产生非常多的DUMP文件

2:高可用的数据库服务器可能很少停机,而你又没有定期清理、清空这些错误日志信息,那么ERRORLOG.n/SQLAGENT.n文件增长会...

继续阅读

发表在 db | 标签为 , , | SQL Server 错误日志已关闭评论

mysql sort

按IN顺序排序

select * from table_name where doc_id IN ('1dba', 'c20a', '907b')

mysql返回的结果集的排序是按照入库顺序给出的,若希望按照doc_id列表的先后顺序进行排序,

select * from table_name where doc_id IN ('1dba', 'c20a', '907b') order by FIND_IN_SET('1dba', 'c20a', '907b')

 

 ORDER BY + 字段 + 排序方式

使用前:
SELECT `goods_...

继续阅读

发表在 db | 标签为 | mysql sort已关闭评论

mongod

#!/bin/bash

# mongod - Startup script for mongod

# chkconfig: 35 85 15
# description: Mongo is a scalable, document-oriented database.
# processname: mongod
# config: /etc/mongod.conf
# pidfile: /var/run/mongo/mongod.pid

. /etc/rc.d/init.d/functions

# things from mongod.conf get ther...

继续阅读

发表在 db | 标签为 | mongod已关闭评论

mysql 误删除ibdata1之后如何恢复

删除了在线服务器中mysql innodb相关的数据文件ibdata1以及日志文件 ib_logfile*,
应该怎样恢复呢?

观察网站,发现一切都很正常,数据的读取与写入操作都完全正常。
这是怎么个情况?

其实,mysqld在运行状态中,会保持这些文件为打开状态,
即使把它们删除了,它们仍旧存在于文件系统中,mysqld仍然可以对其进行读写。

root@localhost:/var/lib/mysql# ls -la /proc/14101/fd/| grep -e ibdata -e ib_
lrwx------ 1 root  root  64 Aug  7 23:29 3 ...

继续阅读

发表在 db | 标签为 | mysql 误删除ibdata1之后如何恢复已关闭评论

mysql MM

MySQL支持单向、异步复制,复制过程中一个服务器充当主服务器,而一个或多个其它服务器充当从服务器。主服务器将更新写入二进制日志文件,并维护日志文件的一个索引以跟踪日志循环。当一个从服务器连接到主服务器时,它通知主服务器从服务器在日志中读取的最后一次成功更新的位置。从服务器接收从那时起发生的任何更新,然后封锁并等待主服务器通知下一次更新。

配置主主同步的操作步骤:
MySQL-A     10.17.1.11
MySQL-B     10.17.1.12
1.     分别在两台机器授权账户:grant replication... 继续阅读

发表在 db | 标签为 | mysql MM已关闭评论

mysql user grant

  • 登录MYSQL:
  •   @>mysql -u root -p

      @>密码

     

  • 用户授权
  •    grant 权限 on 数据库.* to 用户名@登录主机 identified by "密码"; 

       mysql>flush privileges;//刷新系统权限表

     

  • 授权示例:
  •         授权 test 用户 test 表所有权限(密码1234)

       mysql>grant all privileges on test.* to test@localhost ide...

    继续阅读

    发表在 db | 标签为 | mysql user grant已关闭评论

    mysql innodb 性能优化

    默认情况下,innodb的参数设置的非常小,在生产环境中远远不够用
    比如最重要的两个参数
    innodb_buffer_pool_size 默认是8M
    innodb_flush_logs_at_trx_commit 默认设置的是1 也就是同步刷新log(可以这么理解)
    innodb_buffer_pool_size:这是InnoDB最重要的设置,对InnoDB性能有决定性的影响。默认的设置只有8M,所以默认的数据库设置下面InnoDB性能很差。在只有 InnoDB存储引擎的数据库服务器上面,可以设置60-80%的内存。更精确一点,在内存容量允许的情况下面设置比InnoDB tablesp... 继续阅读

    发表在 db | 标签为 , | mysql innodb 性能优化已关闭评论

    Sql Server 2008 数据库镜像

    系统:win2008企业完全版
    sql版本:Microsoft SQL Server 2008 (RTM) - 10.0.1600.22 (X64)Enterprise Evaluation Edition (64-bit) Server Pack 1
    网络环境:工作组模式
    主服务器:   主机名:dbmaster  全名:dbmaster.test.com  IP:10.10.1.175
    从服务器:  主机名:dbslave   全名:dbslave.test.com   IP:10.10.1....

    继续阅读

    发表在 db | 标签为 , | Sql Server 2008 数据库镜像已关闭评论

    MongoDB主从复制和集群

    主从复制

    最基本的设置是建立一个主节点和多个从节点,每个从节点要知道主节点的地址。

    运行mongod --master就启动了主服务器。运行mongod --slave --source master_address则启动了从服务器,其中master_address就是上面的主节点地址。

    生产环境下有多台服务器,不过这里我们的例子就在同一机器上试验。

    1.给主节点建立数据目录,并绑定端口(10000)

    $ mkdir -p ~/dbs/master

    $ ./mongod --dbpath ~/dbs/ma...

    继续阅读

    发表在 db | 标签为 | MongoDB主从复制和集群已关闭评论

    常见MySQL error code和SQLSTATE code

    常见MySQL error code和SQLSTATE code:

    MySQL error code        SQLSTATE code            Error message

    1011                    HY000                    Error ...

    继续阅读

    发表在 db | 标签为 | 常见MySQL error code和SQLSTATE code已关闭评论

    mysql DECLARE

    DECLARE condition_name CONDITION FOR condition_value
     
    condition_value:
        SQLSTATE [VALUE] sqlstate_value
      | mysql_error_code

    这个语句指定需要特殊处理的条件。它将一个名字和指定的错误条件关联起来。这个名字可以随后被用在DE...

    继续阅读

    发表在 db | 标签为 | mysql DECLARE已关闭评论

    mysql 自增ID

    Q:怎么获得当前的自增的最大值? 
    A:select @@identity

    Q:怎么获得table的当前自增最大值? 
    A:select max(id) from table

    Q:MYSQL中的LAST_INSERT_ID()和MSSQL中的@@IDENTITY 
    A:按照应用需要,常常要取得刚刚插入数据库表里的记录的ID值。 
       在MYSQL中可以使用LAST_INSERT_ID()函数,在MSSQL中使用@@IDENTITY。挺方便的一个函数。

      但是,这里需要注意的是,当使用INSERT语句插入多条记录的时候,...

    继续阅读

    发表在 db | 标签为 | mysql 自增ID已关闭评论

    mysql中int、bigint、smallint 和 tinyint的区别与长度的含义

    最近使用mysql数据库的时候遇到了多种数字的类型,主要有int,bigint,smallint和tinyint。其中比较迷惑的是int和smallint的差别。今天就在网上仔细找了找,找到如下内容,留档做个总结:

    使用整数数据的精确数字数据类型。

    bigint

    从 -2^63 (-9223372036854775808) 到 2^63-1 (9223372036854775807) 的整型数据(所有数字)。存储大小为 8 个字节。

    P.S. bigint已经有长度了,在mysql建表中的length,只是用于显示的位数

    int

    从 -2^31 (-2,147,483,648) 到 2^31 – 1 (2...

    继续阅读

    发表在 db | 标签为 , | mysql中int、bigint、smallint 和 tinyint的区别与长度的含义已关闭评论

    Mysql Explain 详解

    Mysql Explain 详解

    一.语法

    explain < table_name >

    例如: explain select * from t3 where id=3952602;

    二.explain输出解释

    +----+-------------+-------+-------+-------------------+---------+---------+-------+------+-------+
    | id | select_type | table | type  | possible_keys    &nb...

    继续阅读

    发表在 db | 标签为 | Mysql Explain 详解已关闭评论