sql >> Databasteknik >  >> RDS >> Oracle

Lås Oracle-databasen innan du kör skripten Delete/Load data

En delad databas för testning är aldrig en bra idé, förmodligen vet du detta och det är därför du frågar hur du begränsar åtkomsten till en användare i taget.

Predika åsido..... Jag skulle vilja erbjuda en vänsterfältslösning av liquibase för att hantera både databasschemat och datapopulationen. Har många användbara funktioner, varav en är att den automatiskt låser databasen och förhindrar att två instanser av liquibase stör varandra.

Exempel

<project>
    <modelVersion>4.0.0</modelVersion>
    <groupId>com.myspotontheweb.db</groupId>
    <artifactId>liquibase-demo</artifactId>
    <version>1.0-SNAPSHOT</version>
    <properties>
        <!-- Liquibase settings -->
        <liquibase.url>jdbc:h2:target/db1/liquibaseTest;AUTO_SERVER=TRUE</liquibase.url>
        <liquibase.driver>org.h2.Driver</liquibase.driver>
        <liquibase.username>user</liquibase.username>
        <liquibase.password>pass</liquibase.password>
        <liquibase.changeLogFile>com/myspotontheweb/db/changelog/db-changelog-master.xml</liquibase.changeLogFile>
        <liquibase.promptOnNonLocalDatabase>false</liquibase.promptOnNonLocalDatabase>
    </properties>
    <dependencies>
        <dependency>
            <groupId>com.h2database</groupId>
            <artifactId>h2</artifactId>
            <version>1.3.162</version>
        </dependency>
    </dependencies>
    <build>
        <plugins>
            <plugin>
                <groupId>org.liquibase</groupId>
                <artifactId>liquibase-maven-plugin</artifactId>
                <version>2.0.2</version>
                <executions>
                    <execution>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>update</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>
</project>


  1. psql:FATAL:roll postgres existerar inte

  2. Använda MySQL-klientapplikationer

  3. Fixa "ERROR 1250 (42000):Tabell '...' från en av SELECT:erna kan inte användas i global ORDER-sats" när du använder UNION i MySQL

  4. Hur man bäst får någons 'rank' från en poängtabell med php och mysql utan looping