MySQL資料庫改名的三種方法

2022-09-14 10:57:09 字數 975 閱讀 3971

innodb引擎的表如何改資料庫名?

如果表示myisam那麼可以直接去到資料庫目錄mv就可以。

innodb完全不行,自己測試過,會提示相關表不存在。

第一種方法:

rename database olddbname to newdbname

這個是5.

1.7到5.1

.23版本可以用的,但是官方不推薦,會有丟失資料的危險

第二種方法:

1.建立需要改成新名的資料庫。

2.mysqldum 匯出要改名的資料庫

3.刪除原來的舊庫(確定是否真的需要)

當然這種方法雖然安全,但是如果資料量大,會比較耗時,哎,當時連這種方法都沒有想到,真有想死的衝動。

第三種方法:

我這裡就用乙個指令碼,很簡單,相信大家都看的懂

複製**

#!/bin/bash

# 假設將sakila資料庫名改為new_sakila

# myisam直接更改資料庫目錄下的檔案即可

mysql -uroot -p123456 -e '

create database if not exists new_sakila

'list_table=$(mysql -uroot -p123456 -nse "

select table_name from information_schema.tables where table_schema='sakila'")

for table in

$list_table

domysql -uroot -p123456 -e "

rename table sakila.$table to new_sakila.$table

"done

複製**

這裡用到了rename table,改表名的命令,但是如果新錶名後面加資料庫名,就會將老資料庫的表移動到新的資料庫,所以,這種方法即安全,又快速。

MySQL資料庫改名的三種方法

前不久去面試,被問到innodb引擎的表如何改資料庫名,當時我也只回答了myisam改如何操作,被一些細節問題打敗,真是操蛋。如果表示myisam那麼可以直接去到資料庫目錄mv就可以。innodb完全不行,自己測試過,會提示相關表不存在。第一種方法 rename database olddbname...

MySQL資料庫 安裝(三種方法)

安裝版本8以上 一 rpm包安裝 groupadd mysql useradd g mysql mysql mkdir mysql tar xf mysql 8.0.18 1.el7.x86 64.rpm bundle 1 tar c mysql cd mysql yum localinstall ...

三種方法檢視MySQL資料庫的版本

1 使用 v引數 首先我們想到的肯定就是檢視版本號的引數命令,引數為 v 大寫字母 或者 version 使用方法 d xampp mysql bin mysql v 或者d xampp mysql bin mysql version 2 使用 引數 其實這個有三個類似的引數 help i 大寫的i...