真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

MySQL怎么使用重命名 mysql數(shù)據(jù)庫(kù)重命名sql語句

如何快速重命名一個(gè) MySQL 數(shù)據(jù)庫(kù)

被取消的命令MySQL 之前提供了一個(gè) rename database db_old to db_new 的命令來直接對(duì)數(shù)據(jù)庫(kù)改名,可能由于實(shí)現(xiàn)的功能不完備(比如,這條命令可能是一個(gè)超大的事務(wù),或者是由于之前的表很多還是 MyISAM 等),后來的版本直接取消了這條命令。更改數(shù)據(jù)庫(kù)名大致上有以下幾種方案:

創(chuàng)新互聯(lián)服務(wù)項(xiàng)目包括右江網(wǎng)站建設(shè)、右江網(wǎng)站制作、右江網(wǎng)頁制作以及右江網(wǎng)絡(luò)營(yíng)銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢(shì)、行業(yè)經(jīng)驗(yàn)、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機(jī)構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,右江網(wǎng)站推廣取得了明顯的社會(huì)效益與經(jīng)濟(jì)效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到右江省份的部分城市,未來相信會(huì)繼續(xù)擴(kuò)大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!

一、mysqldump 導(dǎo)入導(dǎo)出要說最簡(jiǎn)單的方法,就是直接用 mysqldump 工具,在舊庫(kù)導(dǎo)出再往新庫(kù)導(dǎo)入(最原始、最慢、最容易想到)的方法:舊庫(kù) yttdb_old 導(dǎo)出(包含的對(duì)象:表、視圖、觸發(fā)器、事件、存儲(chǔ)過程、存儲(chǔ)函數(shù))

二、改整庫(kù)的表名利用 MySQL 更改表名的方法來批量把舊庫(kù)的所有表依次遍歷,改名為新庫(kù)的表。這種方法比第一種要快很多倍,但是沒有第一步操作起來那么順滑,不能一步到位。比如,要把數(shù)據(jù)庫(kù) yttdb_old 改名為 yttdb_new,如果數(shù)據(jù)庫(kù) yttdb_old 里只有磁盤表,那很簡(jiǎn)單,直接改名即可。或者寫個(gè)腳本來批量改,非常簡(jiǎn)單。但是一般舊庫(kù)里不只有磁盤表,還包含其他各種對(duì)象。這時(shí)候可以先考慮把舊庫(kù)的各種對(duì)象導(dǎo)出來,完了在逐一改完表名后導(dǎo)進(jìn)去。

三、歷史方案其實(shí)在 MySQL 早期還有一種方法。假設(shè) MySQL 部署好了后,所有的 binlog 都有備份,并且二進(jìn)制日志格式還是 statement 的話,那就可以簡(jiǎn)單搭建一臺(tái)從機(jī),讓它慢慢追主機(jī)到新的庫(kù)名,等確切要更改舊庫(kù)的時(shí)候,再直接晉升從機(jī)為主機(jī)即可。這里只需要從機(jī)配置一個(gè)參數(shù)來把舊庫(kù)指向?yàn)樾聨?kù):replicate-rewrite-db=yttdb_old-yttdb_new不過這種局限性很大,不具備標(biāo)準(zhǔn)化,不推薦。

總結(jié)其實(shí)針對(duì) MySQL 本身改庫(kù)名,大致就這么幾種方法:

如果數(shù)據(jù)量小,推薦第一種;

數(shù)據(jù)量大,則推薦第二種;

數(shù)據(jù)量巨大,那就非 MySQL 本身能解決的了。

可通過部署第三方 ETL 工具,通過解析 MySQL 二進(jìn)制日志或其他的方式來把舊庫(kù)數(shù)據(jù)直接讀取到新庫(kù)達(dá)到改名的目的等等。

SQL中在做查詢時(shí)怎樣給某一個(gè)字段重命名

SQL中在做查詢時(shí)怎樣給某一個(gè)字段重命名

MySQL中,如何使用SQL語句來對(duì)表中某一個(gè)字段進(jìn)行重命名呢?我們將使用alter table 這一SQL語句。

重命名字段的語法為:alter table 表名 change 字段名 字段新名稱 字段的類型。

現(xiàn)在我們來嘗試把test表中的.t_name字段重命名為t_name_new字段。

1、首先查看一下當(dāng)前test表的結(jié)構(gòu)

mysql describe test;

+------------+-------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+------------+-------------+------+-----+---------+-------+

| t_id | int(11) | YES | | NULL | |

| t_name | var20) | YES | | NULL | |

| t_password | 32) | YES | | NULL | |

| t_birth | date | YES | | NULL | |

+------------+-------------+------+-----+---------+-------+

4 rows in set (0.00 sec)

2、使用alter table語句來修改字段名稱

mysql alter table test change t_name t_name_new var20);

Query OK, 0 rows affected (0.11 sec)

Records: 0 Duplicates: 0 Warnings: 0

3、查看修改過后的結(jié)果

mysql describe test;

+------------+-------------+------+-----+---------+-------+

| Field | Type | Null | Key | Default | Extra |

+------------+-------------+------+-----+---------+-------+

| t_id | int(11) | YES | | NULL | |

| t_name_new | var20) | YES | | NULL | |

| t_password | 32) | YES | | NULL | |

| t_birth | date | YES | | NULL | |

+------------+-------------+------+-----+---------+-------+

4 rows in set (0.00 sec)

至此,我們可以順利的修改表中字段名稱了。

關(guān)于MySQL中使用SQL語句對(duì)字段進(jìn)行重命名,本文就介紹這么多,希望對(duì)大家有所幫助,謝謝! ;

我想修改mysql數(shù)據(jù)庫(kù)的名字,可以怎么修改

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導(dǎo)出數(shù)據(jù)再導(dǎo)入,代碼如下:

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數(shù)據(jù)庫(kù)的五個(gè)方法

五個(gè)改mysql數(shù)據(jù)庫(kù)名的方法:

1.

RENAME

DATABASE

db_name

TO

new_db_name

這個(gè)。。這個(gè)語法在mysql

5.1.7中被添加進(jìn)來,到了5.1.23又去掉了。據(jù)說有可能丟失數(shù)據(jù)。還是不要用的好。詳見:

2.如果所有表都是MyISAM類型的話,可以改文件夾的名字

關(guān)閉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導(dǎo)出數(shù)據(jù)再導(dǎo)入

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的優(yōu)化版。

如何修改MySQL數(shù)據(jù)庫(kù)名稱

修改MySQL數(shù)據(jù)庫(kù)名稱的方法如下:

1.語句修改法:

RENAME DATABASE db_name TO new_db_name

這個(gè)語法在mysql 5.1.7中被添加進(jìn)來,到了5.1.23又去掉了。

2.如果所有表都是MyISAM類型的話,可以改文件夾的名字

把data目錄中的db_name目錄重命名為new_db_name

3.重命名所有的表

代碼如下:

4. mysqldump導(dǎo)出數(shù)據(jù)再導(dǎo)入

代碼如下:

5.使用shell腳本重命名所有的表

代碼如下:

mysql 如何對(duì)視圖的名稱重命名?

建立視圖的語句本身就可以寫成create or replace,也就是建立或者重建。所以個(gè)人想到的辦法就是:刪除--再命名重建,或者也可以先建立新的視圖-再刪除舊的,新舊視圖并不沖突。

至于重命名,我能想到的只有rename命令,不過這個(gè)能操作視圖嗎,我表示懷疑,你可以試試(按照操作表的方式試試),不過估計(jì)不行。


網(wǎng)頁標(biāo)題:MySQL怎么使用重命名 mysql數(shù)據(jù)庫(kù)重命名sql語句
分享鏈接:http://weahome.cn/article/hejcpj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部