精华内容
下载资源
问答
  • mysql drop database命令用于删除一个数据库,如果试图使用drop database命令删除一个不存在的数据库,那么那么你会收到此错误:ERROR 1008 (HY000): Can’t drop database ‘tutorial_database’; database doesn’...
  • 数据库用DROP DATABASE命令删除: DROP DATABASE name; 只有数据库的拥有者或者超级用户才可以删除数据库。删除数据库会移除其中包括的所有对象。数据库的删除不能被撤销。 你不能在与目标数据库连接时执行DROP ...

    PostgreSQL如何删除数据库? DROP DATABASE命令;dropdb使用参数说明;删库完了可以跑路?

    销毁一个数据库

    22.5. 销毁一个数据库
    数据库用DROP DATABASE命令删除:

    DROP DATABASE name;
    只有数据库的拥有者或者超级用户才可以删除数据库。删除数据库会移除其中包括的所有对象。数据库的删除不能被撤销。

    你不能在与目标数据库连接时执行DROP DATABASE命令。不过,你可以连接到任何其它数据库,包括 template1数据库。template1也是你删除一个给定集簇中最后一个用户数据库的唯一选项。

    为了方便,有一个在 shell 程序可以删除数据库,dropdb

    dropdb dbname
    (和createdb不同,删除当前用户名的数据库不是默认动作)。

    DROP DATABASE命令

    DROP DATABASE
    

    DROP DATABASE — 移除一个数据库

    大纲

    DROP DATABASE [ IF EXISTS ] name
    

    描述
    DROP DATABASE移除一个数据库。它会 移除该数据库的系统目录项并且删除包含数据的文件目录。它只能由数据库 拥有者执行。还有,当你或者任何其他人已经连接到目标数据库时,它不能 被执行(连接到postgres或者任何其他数据库来发出这 个命令)。

    DROP DATABASE不能被撤销。请小心使用!

    参数
    IF EXISTS
    如果该数据库不存在则不要抛出一个错误,而是发出一个提示。
    
    name
    要移除的数据库的名称。
    

    注解
    DROP DATABASE不能在一个事务块内执行。

    在连接到目标数据库时,这个命令不能被执行。因此,使用程序 dropdb会更方便,它是这个命令的一个包装器。

    兼容性
    SQL 标准中没有DROP DATABASE语句。

    命令方式dropdb

    dropdb
    dropdb — 移除一个PostgreSQL数据库

    大纲

    dropdb [connection-option...] [option...] dbname
    

    描述
    dropdb毁掉一个现有的PostgreSQL数据库。执行这个命令的用户必须是一个数据库超级用户或该数据库的拥有者。

    dropdb是SQL命令DROP DATABASE的一个包装器。在通过这个工具和其他方法访问服务器来删除数据库之间没有实质性的区别。

    选项
    dropdb接受下列命令行参数:

    dbname
    指定要被移除的数据库的名字。
    
    -e
    --echo
    回显dropdb生成并发送给服务器的命令。
    
    -i
    --interactive
    在做任何破坏性的工作之前发出一个验证提示。
    
    -V
    --version
    打印dropdb版本并退出。
    
    --if-exists
    如果数据库不存在也不抛出一个错误。在这种情况下会发出一个提醒。
    
    -?
    --help
    显示有关dropdb命令行参数的帮助并退出。
    
    dropdb也接受下列命令行参数作为连接参数:
    
    -h host
    --host=host
    指定运行服务器的机器的主机名。如果该值以一个斜线开始,它被用作 Unix 域套接字的目录。
    
    -p port
    --port=port
    指定服务器正在监听连接的 TCP 端口或本地 Unix 域套接字文件扩展。
    
    -U username
    --username=username
    要作为哪个用户连接。
    
    -w
    --no-password
    从不发出一个口令提示。如果服务器要求口令认证并且没有其他方式提供口令(例如一个.pgpass文件),那儿连接尝试将失败。
    这个选项对于批处理任务和脚本有用,因为在其中没有一个用户来输入口令。
    
    -W
    --password
    强制dropdb在连接到一个数据库之前提示要求一个口令。
    
    这个选项不是必不可少的,因为如果服务器要求口令认证,dropdb将自动提示要求一个口令。
    但是,dropdb将浪费一次连接尝试来发现服务器想要一个口令。在某些情况下值得用-W来避免额外的连接尝试。
    
    --maintenance-db=dbname
    指定要连接到来发现哪些其他数据库应该被删除的数据库名。
    如果没有指定,将使用postgres数据库。而如果它也不存在,将使用template1。
    

    环境
    PGHOST
    PGPORT
    PGUSER
    默认连接参数

    和大部分其他PostgreSQL工具相似,这个工具也使用libpq(见官方文档第 33.14 节)支持的环境变量。

    诊断
    在有困难时,可以在DROP DATABASE和psql中找潜在问题和错误消息的讨论。数据库服务器必须运行在目标主机上。同样,任何libpq前端库使用的默认连接设置和环境变量都将适用于此。

    例子
    要在默认数据库服务器上毁掉数据库demo:

    $ dropdb demo
    

    要使用在主机eden、端口 5000 上的服务器中毁掉数据库demo,并带有验证和回显,看看下面的命令:

    $ dropdb -p 5000 -h eden -i -e demo
    Database "demo" will be permanently deleted.
    Are you sure? (y/n) y
    DROP DATABASE demo;
    
    展开全文
  • Mysql命令drop database删除数据库 drop命令用于删除数据库。drop命令格式:drop database <数据库名>;例如,删除名为 xhkdb的数据库:mysql> drop database xhkdb;[例子1] 删除一个已经确定存在的...

    drop命令用于删除数据库。

    drop命令格式:drop database <数据库名>;

    例如,删除名为 xhkdb的数据库:
    mysql> drop database xhkdb;

    [例子1] 删除一个已经确定存在的数据库:
       mysql> drop database drop_database;
       Query OK, 0 rows affected (0.00 sec)

    [例子2] 删除一个不确定存在的数据库:
        mysql> drop database drop_database;
        ERROR 1008 (HY000): Can't drop database 'drop_database'; database doesn't exist
        // 发生错误,不能删除'drop_database'数据库,该数据库不存在。

        mysql> drop database if exists drop_database;
        Query OK, 0 rows affected, 1 warning (0.00 sec)
        //产生一个警告说明此数据库不存在

        mysql> create database drop_database;  // 创建一个数据库
        Query OK, 1 row affected (0.00 sec)
        mysql> drop database if exists drop_database;  // if exists 判断数据库是否存在,不存在也不产生错误
        Query OK, 0 rows affected (0.00 sec)

    转载于:https://www.cnblogs.com/it-tsz/p/10227065.html

    展开全文
  • MySQL命令drop database删除数据库

    万次阅读 2016-11-23 13:44:52
    drop命令用于删除数据库。 drop命令格式:drop database ; 例如,删除名为 xhkdb的数据库: mysql> drop database xhkdb; [例子1] 删除一个已经确定存在的数据库:  mysql> drop database drop_database...
    drop命令用于删除数据库。

    drop命令格式:drop database <数据库名>;

    例如,删除名为 xhkdb的数据库:
    mysql> drop database xhkdb;

    [例子1] 删除一个已经确定存在的数据库:
       mysql> drop database drop_database;
       Query OK, 0 rows affected (0.00 sec)

    [例子2] 删除一个不确定存在的数据库:
        mysql> drop database drop_database;
        ERROR 1008 (HY000): Can't drop database 'drop_database'; database doesn't exist
        // 发生错误,不能删除'drop_database'数据库,该数据库不存在。

        mysql> drop database if exists drop_database;
        Query OK, 0 rows affected, 1 warning (0.00 sec)
        //产生一个警告说明此数据库不存在

        mysql> create database drop_database;  // 创建一个数据库
        Query OK, 1 row affected (0.00 sec)
        mysql> drop database if exists drop_database;  // if exists 判断数据库是否存在,不存在也不产生错误
        Query OK, 0 rows affected (0.00 sec)
    展开全文
  • 一、删除一个已有的数据库/*=====DBCA删除法=====*/[oracle@localhost ~]$ cd /oracle/11g/dbs[oracle@localhost dbs]$ lshc_DBUA0.datinit.oramickey_orcl.oraorapworclpeshm_orcl_0hc_mcky.datlkMCKYold...

    一、删除一个已有的数据库

    /*=====DBCA删除法=====*/

    [oracle@localhost ~]$ cd /oracle/11g/dbs

    [oracle@localhost dbs]$ lshc_DBUA0.dat init.ora  mickey_orcl.ora  orapworcl     peshm_orcl_0

    hc_mcky.dat  lkMCKY    old              peshm_DBUA0_0  spfilemcky.ora

    # 之前用DBCA创建了一个数据库mcky

    hc_orcl.dat  lkORCL    orapwmcky        peshm_mcky_0   spfileorcl.ora

    [oracle@localhost dbs]$ dbca

    #启动dbca来删除数据库

    70cb261de9642b721d2b4be9e879fb7c.png

    2b79978332167314423f0f01c8c79f56.png

    29724abe72c488e8949c538c5ec19e10.png

    /*=====手动删除=====*/

    这是通过DBCA删除数据库的方式,事实上,也可以使用相应的命令手动删除数据库。

    由于使用DBCA创建的数据库时遵循OFA规范的,因此它的数据库文件通常会放在几个不同的地方,首先,在$ORACLE_HOME/dbs目录下带SID的文件都是该数据库相关的参数文件:

    [oracle@localhost dbs]$ ls | grep mckyhc_mcky.dat

    orapwmcky

    peshm_mcky_0

    spfilemcky.ora

    第二,在$ORACLE_BASE/oradata目录下有一个以SID命名的目录,也是该数据库相关的文件,也应该删除之

    [oracle@localhost dbs]$ cd /oracle/oradata

    [oracle@localhost oradata]$ lltotal 8

    drwxr-x---. 2 oracle oinstall 4096 Sep  9 10:35 mcky

    # SID为mcky的数据库的data files

    drwxr-x---. 2 oracle oinstall 4096 Aug  5 18:29 orcl

    第三,在$ORACLE_BASE/admin目录下也有一个以SID命名的目录,也需要将其删除

    [oracle@localhost oradata]$ cd /oracle/admin

    [oracle@localhost admin]$ lltotal 8

    drwxr-x---. 5 oracle oinstall 4096 Sep  9 10:33 mcky

    drwxr-x---. 5 oracle oinstall 4096 Aug  5 18:24 orcl

    ======删除过程======

    [oracle@localhost admin]$ rm -fR mcky

    [oracle@localhost admin]$ cd /oracle/oradata

    [oracle@localhost oradata]$ lsmcky  orcl

    [oracle@localhost oradata]$ rm -fR mcky

    [oracle@localhost oradata]$ cd /oracle/11g/dbs

    [oracle@localhost dbs]$ lshc_DBUA0.dat init.ora  mickey_orcl.ora  orapworcl     peshm_orcl_0

    hc_mcky.dat  lkMCKY    old              peshm_DBUA0_0  spfilemcky.ora

    hc_orcl.dat  lkORCL    orapwmcky        peshm_mcky_0   spfileorcl.ora

    [oracle@localhost dbs]$ rm -f hc_mcky.dat lkMCKY orapwmcky spfilemcky.ora

    [oracle@localhost dbs]$ rm -fR peshm_mcky_0

    [oracle@localhost dbs]$ lshc_DBUA0.dat init.ora  mickey_orcl.ora  orapworcl     peshm_orcl_0

    hc_orcl.dat  lkORCL    old              peshm_DBUA0_0  spfileorcl.ora

    到这里,就手动删除了数据库。

    二、手动创建数据库的概述

    使用手动方式创建数据库,可以自行定制各种参数,但难度相应较大。

    6536b6871331bcd3beab265f404248a8.png

    详细的创建数据库步骤可查阅联机文档:

    314f2de3c2414a60c41664d0be51733c.png

    16fab726874b7687954de34dfbdddd81.png

    手动创建数据库的步骤大致归纳如下:

    4341b382451f3159e1779ddc31f3056b.png

    8e78cae1a7aa765e4151fadde9e8c02e.png

    1.指定SID

    2.设置环境变量

    3.确定DBA的认证方法(操作系统;基于口令的认证)

    4.创建初始化参数文件

    5.创建实例(仅针对Windows)

    6.连接Instance

    7.创建服务器参数文件

    8.启动实例

    9.运行CREATEDATABASE的指令

    10.创建额外的表空间

    11.建立数据字典

    ----------后面都是可选项----------

    12.安装可选项

    13.备份数据库

    14.允许数据库实例自启动

    三、手动创建一个数据库

    a5730815e870ae7acc037b524e0d077a.png

    ed5fac51783f1ee0bca51ca4c208551c.png

    74d1009dba59045c94c4e4e87d99252a.png

    [oracle@localhost ~]$ iduid=500(oracle) gid=500(oinstall)groups=500(oinstall),501(dba)

    # 当前操作系统用户为oracle,属于dba组

    context=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023

    [oracle@localhost dbs]$ env | grep ORAORACLE_SID=orcl

    ORACLE_BASE=/oracle

    ORACLE_HOME=/oracle/11g

    # 当前的环境变量

    ======创建一个环境配置文件=========

    [oracle@localhost dbs]$ vim wly.env

    ORACLE_BASE=/oracle

    ORACLE_HOME=$ORACLE_BASE/11g

    ORACLE_SID=wly

    ORACLE_NLS33=$ORACLE_HOME/nls/data

    PATH=$ORACLE_HOME/bin:$PATH

    LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

    export ORACLE_BASE ORACLE_HOME ORACLE_SID ORACLE_NLS33 PATHLD_LIBRARY_PATH

    [oracle@localhost dbs]$ chmod +x wly.env

    [oracle@localhost dbs]$ . ./wly.env

    #执行环境变量,注意是两个点

    [oracle@localhost dbs]$ env | grep ORAORACLE_NLS33=/oracle/11g/nls/data

    ORACLE_SID=wly

    ORACLE_BASE=/oracle

    ORACLE_HOME=/oracle/11g

    # 环境变量已经生效了

    997977fcca994d94cfae9e5e91ea4e5a.png

    =======创建初始化文件======

    [oracle@localhost dbs]$ vim initwly.oradb_name='wly'

    # 创建数据库需要大量的参数,这些参数的含义会在后文中介绍

    # 这里只设置最简单的数据库名字,其他的参数都是以缺省值。

    ed79be5917f0de521a8dc1ee45966234.png

    这一步针对的是Windows平台,和本机环境不符,故略过。

    b3dd6f18ea10dcca97fcc7c7769b194e.png

    [oracle@localhost dbs]$ sqlplus /nolog

    SQL*Plus: Release 11.2.0.1.0 Production on Tue Sep 912:27:29 2014

    Copyright (c) 1982, 2009, Oracle.  All rights reserved.

    SQL> conn / as sysdbaConnected to an idle instance.

    3cfa6c3d909b1a6b72c7dcaaac295deb.png

    =======根据PFILE创建SPFILE========

    SQL> create spfile from pfile;File created.

    [oracle@localhost dbs]$ lshc_DBUA0.dat initwly.ora  mickey_orcl.ora  peshm_DBUA0_0   spfileorcl.ora

    old  spfilewly.ora  hc_orcl.dat   lkORCL   peshm_orcl_0   wly.env

    init.ora  orapworcl

    b3b41fa3af2ad32285b669beed74545e.png

    由于PFILE除了数据库名,没有设置任何参数,因此需要创建SPFILE,否则无法启动数据库

    bdf379756c4e847d7276e6974cadf979.png

    以NOMOUNT模式启动数据库,读取SPFILE

    SQL> startup nomountORACLE instance started.

    Total System Global Area 146472960 bytes

    Fixed Size                 1335080 bytes

    Variable Size             92274904 bytes

    Database Buffers          50331648 bytes

    Redo Buffers               2531328 bytes

    [oracle@localhost dbs]$ ps -ef | grep oracleoracle    1276  1275  012:35 pts/0    00:00:00 -bash

    root      1516     1  0Sep08 ?        00:00:00 login --oracle

    oracle    9716  1276  012:42 pts/0    00:00:00 sqlplus

    oracle   11437     1  001:37 ?        00:00:04/oracle/11g/bin/tnslsnr LISTENER -inherit

    oracle   13117     1  012:51 ?        00:00:00 ora_pmon_wly

    ...

    oracle   13145     1  012:51 ?        00:00:00 ora_mmon_wly

    oracle   13147     1  012:51 ?        00:00:00 ora_mmnl_wly

    # wly数据库的进程已经启动了

    oracle   13148  9716  012:51 ?        00:00:00 oraclewly(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=beq)))

    oracle   13153  9716  012:52 pts/0    00:00:00 /bin/bash

    oracle   1317213153  2 12:52 pts/0    00:00:00 ps -ef

    [oracle@localhost dbs]$ ipcs# ipcs资源已经分配了

    ------ Shared Memory Segments --------

    key        shmid      owner     perms      bytes      nattch    status

    0x00000000 851968    oracle     600        393216     2         dest

    ------ Semaphore Arrays --------

    key        semid      owner     perms      nsems

    0x1ce603a0 3604482   oracle     660        104

    ------ Message Queues --------

    key        msqid      owner     perms      used-bytes   messages

    33353112dee2e9470303ee382839f5a2.png

    SQL> create database wly;-- 这一步需要一定的时间,来创建一个几十,甚至上百兆的数据库

    Database created.

    至此,数据库就创建好了,可以查看到这个新建的数据库:

    [oracle@localhost dbs]$ lltotal 240416

    -rw-r-----. 1 oracle oinstall  7847936 Sep 9 12:57 cntrlwly.dbf

    -rw-r-----. 1 oracle oinstall 81928192 Sep  9 12:56 dbs1wly.dbf

    #  dbs1wly.dbf即为新创建的数据库相关文件

    -rw-r-----. 1 oracle oinstall 10493952 Sep  9 12:56 dbu1wly.dbf

    -rw-r-----. 1 oracle oinstall 40968192 Sep  9 12:56 dbx1wly.dbf

    -rw-rw----. 1 oracle oinstall     1544 Sep 9 12:46 hc_DBUA0.dat

    -rw-rw----. 1 oracle oinstall     1544 Sep 9 08:51 hc_orcl.dat

    -rw-rw----. 1 oracle oinstall     1544 Sep 9 12:56 hc_wly.dat

    -rw-r--r--. 1 oracle oinstall     2851 May 15  2009 init.ora

    -rw-r--r--. 1 oracle oinstall       14 Sep 9 12:40 initwly.ora

    -rw-r-----. 1 oracle oinstall       24 Aug 5 18:28 lkORCL

    -rw-r-----. 1 oracle oinstall       24 Sep 9 12:56 lkWLY

    -rw-r-----. 1 oracle oinstall 52429312 Sep  9 12:56 log1wly.dbf

    -rw-r-----. 1 oracle oinstall 52429312 Sep  9 12:56 log2wly.dbf

    -rw-r--r--. 1 oracle oinstall      723 Sep 9 07:37 mickey_orcl.ora

    drwxr-xr-x. 2 oracle oinstall     4096 Sep 9 03:48 old

    -rw-r-----. 1 oracle oinstall     1536 Sep 9 06:25 orapworcl

    drwx------. 2 oracle oinstall     4096 Sep 9 10:19 peshm_DBUA0_0

    drwx------. 2 oracle oinstall     4096 Aug 5 18:25 peshm_orcl_0

    drwx------. 2 oracle oinstall     4096 Sep 9 12:51 peshm_wly_0

    -rw-r-----. 1 oracle oinstall     2560 Sep 9 07:46 spfileorcl.ora

    -rw-r-----. 1 oracle oinstall     1536 Sep 9 12:51 spfilewly.ora

    -rwxr-xr-x. 1 oracle oinstall      255 Sep 9 12:39 wly.env

    [oracle@localhost dbs]$ cd /oracle/oradata

    [oracle@localhost oradata]$ lltotal 4

    drwxr-x---. 2 oracle oinstall 4096 Aug  5 18:29 orcl

    # 这里只有一个orcl目录,而没有创建wly目录,是因为初始化参数太简陋了,并没有遵循OFA规范。

    91805d8421089a8a1339d4b4087d73f5.png

    手动创建数据库的过程到这里就结束了,尽管这个数据库由于参数过于简单而无法应用于实际生产环境中,但更复杂更完善的数据库也就是在上述过程的基础上增加参数和命令选项完成的,这需要对数据库有更为深刻的认识,后文中将陆续介绍各种参数的设置方法。

    展开全文
  • alterdatabasecreatedatafile 11 AS ''; 根据控制文件创建数据文件11到新位置。 ALTER DATABASE RENAME FILE '' TO ''; 重新定义数据文件到新位置,包括数据文件和日志文件均可。...该命令不会删除数...
  • 一、删除一个已有的数据库/*=====DBCA删除法=====*/[oracle@localhost ~]$ cd /oracle/11g/dbs[oracle@localhost dbs]$ lshc_DBUA0.datinit.oramickey_orcl.oraorapworclpeshm_orcl_0 hc_mcky.datlkMCKY...
  • drop命令用于删除数据库。drop命令格式:drop database <数据库名>;例如,删除名为 xhkdb的数据库:mysql> drop database xhkdb;[例子1] 删除一个已经确定存在的数据库: mysql> drop database drop_...
  • 如果使用DROP DATABASE 命令删除ORACLE实例:oracle@oracle /home/oracle$ rman target /Recovery Manager: Release 11.2.0.3.0 - Production on 星期五 11月 27 09:33:56 2015Copyright (c) 1982, 2011, Oracle and...
  • 在10g以前,要彻底删除数据库,只有两个...从10g开始,Oracle提供了DROP DATABASE的语法,使得数据库的删除变得非常的简单。     不过DROP DATABASE还是有一定的限制条件的: SQL> conn / as sysdba Connecte
  • 删除数据库-命令方式-drop database;

    千次阅读 2013-09-25 20:41:36
    删除数据库方法1:使用DBCA图形化界面来进行。 方法2:使用如下命令--LINUX系统下 三条命令: SYS@bys1>startup mount exclusive ORACLE instance started. Total System Global Area 631914496 bytes Fixed Size...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 3,632
精华内容 1,452
关键字:

删除database命令