本文目錄一覽:
- 1、我想修改mysql資料庫的名字,可以怎麼修改
- 2、重命名mysql資料庫的五個方法
- 3、mysql中資料庫名字分大小寫嗎?
- 4、如何快速地重命名MySQL資料庫名
- 5、MySQL的資料庫文件有幾種?擴展名及作用分別是什麼?
我想修改mysql資料庫的名字,可以怎麼修改
1、方法一:重命名所有的表,代碼如下:
CREATE
DATABASE
new_db_name;
RENAME
TABLE
db_name.table1
TO
new_db_name.table1,
db_name.table2
TO
new_db_name.table2;
DROP
DATABASE
db_name;
2、方法二:mysqldump導出數據再導入,代碼如下:
mysqldump
-uxxxx
-pxxxx
-h
xxxx
db_name
db_name_dump.SQL
mysql
-uxxxx
-pxxxx
-h
xxxx
-e
「CREATE
DATABASE
new_db_name」
mysql
-uxxxx
-pxxxx
-h
xxxx
new_db_name
db_name_dump.SQL
mysql
-uxxxx
-pxxxx
-h
xxxx
-e
「DROP
DATABASE
db_name」
3、方法三:使用shell腳本重命名所有的表,代碼如下:
#!/bin/bash
mysqlconn=」mysql
-u
xxxx
-pxxxx
-S
/var/lib/mysql/mysql.sock
-h
localhost」
olddb=」db_name」
newdb=」new_db_name」
#$mysqlconn
-e
「CREATE
DATABASE
$newdb」
params=$($mysqlconn
-N
-e
「SELECT
TABLE_NAME
FROM
INFORMATION_SCHEMA.TABLES
WHERE
table_schema=’$olddb’」)
for
name
in
$params;
do
$mysqlconn
-e
「RENAME
TABLE
$olddb.$name
to
$newdb.$name」;
done;
#$mysqlconn
-e
「DROP
DATABASE
$olddb」
重命名mysql資料庫的五個方法
五個改mysql資料庫名的方法:
1.
RENAME
DATABASE
db_name
TO
new_db_name
這個。。這個語法在mysql
5.1.7中被添加進來,到了5.1.23又去掉了。據說有可能丟失數據。還是不要用的好。詳見:
2.如果所有表都是MyISAM類型的話,可以改文件夾的名字
關閉mysqld
把data目錄中的db_name目錄重命名為new_db_name
開啟mysqld
3.重命名所有的表
CREATE
DATABASE
new_db_name;
RENAME
TABLE
db_name.table1
TO
new_db_name.table1,
db_name.table2
TO
new_db_name.table2;
DROP
DATABASE
db_name;
4.
mysqldump導出數據再導入
mysqldump
-uxxxx
-pxxxx
-h
xxxx
db_name
db_name_dump.SQL
mysql
-uxxxx
-pxxxx
-h
xxxx
-e
「CREATE
DATABASE
new_db_name」
mysql
-uxxxx
-pxxxx
-h
xxxx
new_db_name
db_name_dump.SQL
mysql
-uxxxx
-pxxxx
-h
xxxx
-e
「DROP
DATABASE
db_name」
5.使用Shell腳本重命名所有的表
#!/bin/bash
mysqlconn=」mysql
-u
xxxx
-pxxxx
-S
/var/lib/mysql/mysql.sock
-h
localhost」
olddb=」db_name」
newdb=」new_db_name」
#$mysqlconn
-e
「CREATE
DATABASE
$newdb」
params=$($mysqlconn
-N
-e
「SELECT
TABLE_NAME
FROM
INFORMATION_SCHEMA.TABLES
WHERE
table_schema=』$olddb』」)
for
name
in
$params;
do
$mysqlconn
-e
「RENAME
TABLE
$olddb.$name
to
$newdb.$name」;
done;
#$mysqlconn
-e
「DROP
DATABASE
$olddb」
就是方法3的優化版。
mysql中資料庫名字分大小寫嗎?
分大小寫。
MySQL在Linux下資料庫名、表名、列名、別名大小寫規則是這樣的:資料庫名與表名是嚴格區分大小寫的;表的別名是嚴格區分大小寫的;列名與列的別名在所有的情況下均是忽略大小寫的;變數名也是嚴格區分大小寫的;MySQL在Windows下都不區分大小寫。
不區分大小寫在MySQL中,資料庫和表對就於那些目錄下的目錄和文件。因而,操作系統的敏感性決定資料庫和表命名的大小寫敏感。這就意味著資料庫和表名在Windows中是大小寫不敏感的,而在大多數類型的Unix系統中是大小寫敏感的。
應用環境
與其他的大型資料庫例如 Oracle、DB2、SQL Server等相比,MySQL自有它的不足之處,但是這絲毫也沒有減少它受歡迎的程度。對於一般的個人使用者和中小型企業來說,MySQL提供的功能已經綽綽有餘,而且由於 MySQL是開放源碼軟體,因此可以大大降低總體擁有成本。
索引是一種特殊的文件(InnoDB 數據表上的索引是表空間的一個組成部分),它們包含著對數據表裡所有記錄的引用指針。索引不是萬能的,索引可以加快數據檢索操作,但會使數據修改操作變慢。
以上內容參考:百度百科-mySQL
如何快速地重命名MySQL資料庫名
被取消的命令MySQL 之前提供了一個 rename database db_old to db_new 的命令來直接對資料庫改名,可能由於實現的功能不完備(比如,這條命令可能是一個超大的事務,或者是由於之前的表很多還是 MyISAM 等),後來的版本直接取消了這條命令。更改資料庫名大致上有以下幾種方案:
一、mysqldump 導入導出要說最簡單的方法,就是直接用 mysqldump 工具,在舊庫導出再往新庫導入(最原始、最慢、最容易想到)的方法:舊庫 yttdb_old 導出(包含的對象:表、視圖、觸發器、事件、存儲過程、存儲函數)
二、改整庫的表名利用 MySQL 更改表名的方法來批量把舊庫的所有表依次遍歷,改名為新庫的表。這種方法比第一種要快很多倍,但是沒有第一步操作起來那麼順滑,不能一步到位。比如,要把資料庫 yttdb_old 改名為 yttdb_new,如果資料庫 yttdb_old 里只有磁碟表,那很簡單,直接改名即可。或者寫個腳本來批量改,非常簡單。但是一般舊庫里不只有磁碟表,還包含其他各種對象。這時候可以先考慮把舊庫的各種對象導出來,完了在逐一改完表名後導進去。
三、歷史方案其實在 MySQL 早期還有一種方法。假設 MySQL 部署好了後,所有的 binlog 都有備份,並且二進位日誌格式還是 statement 的話,那就可以簡單搭建一台從機,讓它慢慢追主機到新的庫名,等確切要更改舊庫的時候,再直接晉陞從機為主機即可。這裡只需要從機配置一個參數來把舊庫指向為新庫:replicate-rewrite-db=yttdb_old-yttdb_new不過這種局限性很大,不具備標準化,不推薦。
總結其實針對 MySQL 本身改庫名,大致就這麼幾種方法:
如果數據量小,推薦第一種;
數據量大,則推薦第二種;
數據量巨大,那就非 MySQL 本身能解決的了。
可通過部署第三方 ETL 工具,通過解析 MySQL 二進位日誌或其他的方式來把舊庫數據直接讀取到新庫達到改名的目的等等。
MySQL的資料庫文件有幾種?擴展名及作用分別是什麼?
在MySQL中每一個資料庫都會在定義好(或者默認)的數據目錄下存在一個以資料庫名字命名的文件夾,用來存放該資料庫中各種表數據文件。
1、「.frm」文件 與表相關的元數據(meta)信息都存放在「.frm」文件中,包括表結構的定義信息等。不論是什麼存儲引擎,每一個表都會有一個以表名命名的「.frm」文件。所有的「.frm」文件都存放在所屬資料庫的文件夾下面。
2、「.MYD」文件「 .MYD」文件是MyISAM存儲引擎專用,存放MyISAM表的數據。每一個MyISAM表都會有一個「.MYD」文件與之對應,同樣存放於所屬資料庫的文件夾下,和「.frm」文件在一起。
3、「.MYI」文件 「.MYI」文件也是專屬於MyISAM存儲引擎的,主要存放MyISAM表的索引相關信息。對於MyISAM存儲來說,可以被cache的內容主要就是來源於「.MYI」文件中。每一個MyISAM表對應一個「.MYI」文件,存放於位置和「.frm」以及「.MYD」一樣。
管理工具:
可以使用命令行工具管理 MySQL 資料庫(命令 mysql 和 mysqladmin),也可以從 MySQL 的網站下載圖形管理工具 MySQL Administrator, MySQL Query Browser 和 MySQL Workbench。
phpMyAdmin是由 php 寫成的 MySQ L資料庫系統管理程程序,讓管理者可用 Web 界面管理 MySQL 資料庫。
phpMyBackupPro也是由 PHP 寫成的,可以透過 Web 界面創建和管理資料庫。它可以創建偽 cronjobs,可以用來自動在某個時間或周期備份 MySQL 資料庫。另外,還有其他的 GUI 管理工具,例如 mysql-front 以及 ems mysql manager, navicat等等。
以上內容參考:百度百科-mySQL
原創文章,作者:XUWKA,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/324749.html