批量還原sql檔案

2021-08-22 15:19:08 字數 1435 閱讀 4972

需求:單位裡的睿智不會批量還原sql檔案,這些檔案在同乙個資料庫,單錶的資料量不算大

解決:批量讀取檔案,然後執行sql語句就可以了,此方法適用於mysql資料庫

# -*- coding: utf-8 -*-

# @time : 2018/8/8 22:14

# @author : xiangchaoming

# @qq : 239036082

import os, subprocess

import pymysql

import pymysql.cursors

defcreate_sql

(): sql_list =

for root, dirs, files in os.walk("d:/temp"):

for file in files:

if file.endswith("sql"):

file_path = os.path.join(root, file)

return sql_list

defmysql_handle

(): db = pymysql.connect(host="192.168.11.117", user="root",

password="", db="xiang", port=3306)

# 使用cursor()方法獲取操作游標

cur = db.cursor()

try:

for sql_path in create_sql():

try:

with open(sql_path, "r", encoding="utf-8") as f:

sqls = f.read().replace("<--db-prefix-->", "").split(";\n")

##執行sql語句,使用迴圈執行sql語句

for sql in sqls:

print(sql)

if sql.__contains__("create database `") or sql.__contains__("use `"):

pass

else:

cur.execute(sql+";")

except exception as e:

print(e)

pass

except exception as e:

print(e)

pass

# 錯誤回滾

# db.rollback()

finally:

cur.close()

db.commit()

db.close()

if __name__=="__main__":

mysql_handle()

轉 SQL檔案組備份和還原

from 如果乙個資料庫比較大的時候,一般會包含多個檔案組,由於備份還原是個很耗資源和時間的事情,所以檔案組的備份和還原成了另外一種選擇。在建立帶有多個檔案組的時候,建議將使用者資料放在輔助檔案組中,就是將其中乙個檔案組設定為預設,而不是用primary作為預設的檔案組 create databas...

linux精簡 備份還原 iso檔案 批量安裝?

不過沒有找到類似windows那樣的ghost盤安裝的形式,不知一般是如何做的?可以製作精簡的核心和啟動光碟等任何複雜的操作,不過步驟也最多 linux from scratch 6.6 把乙個機器的某個分割槽或整個磁碟進行備份和還原 定製基於kickstart的red hat enterprise...

Oracle批量執行SQL檔案步驟

1 執行cmd進入命令列介面 2 進入到存放批量sql的資料夾下面 3 輸入命令 sqlplus 資料庫名 密碼 資料庫 按回車鍵 4 輸入spool 指定路徑 a.log 按回車鍵 此步驟的主要作用就是追蹤批量執行sql的日誌,路徑隨便寫,只要能找到就行,a.log可以隨便起名,但是必須要.log...