mysql修改資料庫
被取消的命令MySQL 之前提供了一個 rename database db_old to db_new 的命令來直接對資料庫改名,可能由於實現的功能不完備(比如,這條命令可能是一個超大的事務,或者是由於之前的表很多還是 MyISAM 等),後來的版本直接取消了這條命令。更改資料庫名大致上有以下幾種方案:
一、mysqlmp 導入導出要說最簡單的方法,就是直接用 mysqlmp 工具,在舊庫導出再往新庫導入(最原始、最慢、最容易想到)的方法:舊庫 yttdb_old 導出(包含的對象:表、視圖、觸發器、事件、存儲過程、存儲函數)
二、改整庫的表名利用 MySQL 更改表名的方法來批量把舊庫的所有表依次遍歷,改名為新庫的表。這種方法比第一種要快很多倍,但是沒有第一步操作起來那麼順滑,不能一步到位。比如,要把資料庫 yttdb_old 改名為 yttdb_new,如果資料庫 yttdb_old 里只有磁碟表,那很簡單,直接改名即可。或者寫個腳本來批量改,非常簡單。但是一般舊庫里不只有磁碟表,還包含其他各種對象。這時候可以先考慮把舊庫的各種對象導出來,完了在逐一改完表名後導進去。
三、歷史方案其實在 MySQL 早期還有一種方法。假設 MySQL 部署好了後,所有的 binlog 都有備份,並且二進制日誌格式還是 statement 的話,那就可以簡單搭建一台從機,讓它慢慢追主機到新的庫名,等確切要更改舊庫的時候,再直接晉升從機為主機即可。這里只需要從機配置一個參數來把舊庫指向為新庫:replicate-rewrite-db=yttdb_old->yttdb_new不過這種局限性很大,不具備標准化,不推薦。
總結其實針對 MySQL 本身改庫名,大致就這么幾種方法:
如果數據量小,推薦第一種;
數據量大,則推薦第二種;
數據量巨大,那就非 MySQL 本身能解決的了。
可通過部署第三方 ETL 工具,通過解析 MySQL 二進制日誌或其他的方式來把舊庫數據直接讀取到新庫達到改名的目的等等。
B. mysql 修改欄位內容
分析如下:
update banji setnum=要改的值
UPDATE 表名稱 SET 列名稱 = 新值WHERE列名稱 = 某值
如果要改全部,就忽略條件.
MySQL是一個關系型資料庫管理系統,由瑞典MySQL AB 公司開發,目前屬於Oracle旗下產品。
MySQL 是最流行的關系型資料庫管理系統之一,在 WEB 應用方面,MySQL是最的RDBMS(Relational Database Management System,關系資料庫管理系統) 應用軟體。
MySQL是一種關系資料庫管理系統,關系資料庫將數據保存在不同的表中,而不是將所有數據放在一個大倉庫內,這樣就增加了速度並提高了靈活性。
MySQL所使用的 SQL 語言是用於訪問資料庫的最常用標准化語言。
MySQL 軟體採用了雙授權政策,分為社區版和商業版,由於其體積小、速度快、總體擁有成本低,尤其是開放源碼這一特點,一般中小型網站的開發都選擇 MySQL 作為網站資料庫。
由於其社區版的性能卓越,搭配php和Apache可組成良好的開發環境。
(2)mysql修改資料庫擴展閱讀:
應用環境
與其他的大型資料庫
例如 Oracle、DB2、SQL Server等相比,MySQL
自有它的不足之處,但是這絲毫也沒有減少它受歡迎的程度。對於一般的個人使用者和中小型企業來說,MySQL提供的功能已經綽綽有餘,而且由於 MySQL是開放源碼軟體,因此可以大大降低總體擁有成本。
Linux作為操作系統,Apache
或Nginx作為 Web 伺服器,MySQL
作為資料庫,PHP/Perl/Python作為伺服器端腳本解釋器。由於這四個軟體都是免費或開放源碼軟體(FLOSS),因此使用這種方式不用花一分錢(除開人工成本)就可以建立起一個穩定、免費的網站系統,被業界稱為「LAMP「或「LNMP」組合。
存儲引擎
MyISAMMySQL 5.0 之前的默認資料庫引擎,最為常用。擁有較高的插入,查詢速度,但不支持事務
InnoDB事務型資料庫的首選引擎,支持ACID事務,支持行級鎖定, MySQL 5.5 起成為默認資料庫引擎
BDB源 自 Berkeley DB,事務型資料庫的另一種選擇,支持Commit 和Rollback 等其他事務特性
Memory所有數據置於內存的存儲引擎,擁有極高的插入,更新和查詢效率。但是會佔用和數據量成正比的內存空間。並且其內容會在 MySQL 重新啟動時丟失
Merge將一定數量的 MyISAM 表聯合而成一個整體,在超大規模數據存儲時很有用
Archive非常適合存儲大量的獨立的,作為歷史記錄的數據。因為它們不經常被讀取。Archive 擁有高效的插入速度,但其對查詢的支持相對較差
Federated將不同的 MySQL 伺服器聯合起來,邏輯上組成一個完整的資料庫。非常適合分布式應用
Cluster/NDB高冗餘的存儲引擎,用多台數據機器聯合提供服務以提高整體性能和安全性。適合數據量大,安全和性能要求高的應用
CSV: 邏輯上由逗號分割數據的存儲引擎。它會在資料庫子目錄里為每個數據表創建一個 .csv 文件。這是一種普通文本文件,每個數據行佔用一個文本行。CSV 存儲引擎不支持索引。
BlackHole:黑洞引擎,寫入的任何數據都會消失,一般用於記錄 binlog 做復制的中繼
EXAMPLE 存儲引擎是一個不做任何事情的存根引擎。它的目的是作為 MySQL 源代碼中的一個例子,用來演示如何開始編寫一個新存儲引擎。同樣,它的主要興趣是對開發者。EXAMPLE 存儲引擎不支持編索引。
另外,MySQL 的存儲引擎介面定義良好。有興趣的開發者可以通過閱讀文檔編寫自己的存儲引擎
C. 修改MYSQL資料庫的默認地址
具體操作:
一、停止mysql
開始-cmd
net
stop
mysql5
二、復制原來資料庫目錄到新目錄
1、復制c:\programdata\mysql\mysql
server
5.5\中的data目錄到
d:\program
files\mysql\mysql
server
5.5\目錄下(自建的目錄)
三,修改mysql配置文件
1、用記事本打開c:\programdata\mysql\mysql
server
5.5\data\目錄下的my.ini
找到datadir="c:\programdata\mysql\mysql
server
5.5\data"
在前面加#注釋掉
在下面添加一行
datadir="d:\program
files\mysql\mysql
server
5.5\data"
修改完成後,保存退出。
四、重新啟動mysql
1、開始-cmd
net
start
mysql5
2、進入mysql控制台
開始-所有程序-mysql-mysql
server
5.5-mysql
5.5
command
line
client
提示輸入mysql
root賬號的密碼,輸入之後回車,進入mysql控制台
show
variables
like
』%datadir%』;
#查詢mysql資料庫存放目錄
如查詢顯示為d:\program
files\mysql\mysql
server
5.5\data\即表示修改成功!
可用data下的數據文件備份還原資料庫
D. 如何修改MySQL資料庫名稱
修改MySQL資料庫名稱的方法如下:
1.語句修改法:
RENAME DATABASE db_name TO new_db_name
這個語法在mysql 5.1.7中被添加進來,到了5.1.23又去掉了。
2.如果所有表都是MyISAM類型的話,可以改文件夾的名字
把data目錄中的db_name目錄重命名為new_db_name
3.重命名所有的表
代碼如下:
E. 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;
F. 如何修改mysql資料庫默認地址
具體操作:
一、停止MySQL
開始-cmd
net stop mysql5
二、復制原來資料庫目錄到新目錄
1、復制C:\ProgramData\MySQL\MySQL Server 5.5\中的data目錄到
D:\Program Files\MySQL\MySQL Server 5.5\目錄下(自建的目錄)
三,修改MySQL配置文件
1、用記事本打開C:\ProgramData\MySQL\MySQL Server 5.5\data\目錄下的my.ini
找到datadir="C:\ProgramData\MySQL\MySQL Server 5.5\data"
在前面加#注釋掉
在下面添加一行
datadir="D:\Program Files\MySQL\MySQL Server 5.5\data"
修改完成後,保存退出。
四、重新啟動MySQL
1、開始-cmd
net start mysql5
2、進入MySQL控制台
開始-所有程序-MySQL-MySQL Server 5.5-MySQL 5.5 Command Line Client
提示輸入MySQL root賬號的密碼,輸入之後回車,進入MySQL控制台
show variables like 』%datadir%』; #查詢MySQL資料庫存放目錄
如查詢顯示為D:\Program Files\MySQL\MySQL Server 5.5\data\即表示修改成功!
可用data下的數據文件備份還原資料庫
G. mysql如何修改資料庫目錄
mysql中修改資料庫目錄方法:
操作步驟:
1.檢查mysql資料庫存放目錄
mysql -u root -prootadmin
#進入資料庫
show variables like '%dir%';
#查看sql存儲路徑
(查看datadir 那一行所指的路徑)
quit;
2.停止mysql服務
service mysqld stop
3.創建新的資料庫存放目錄
mkdir /data/mysql
4.移動/復制之前存放資料庫目錄文件,到新的資料庫存放目錄位置
cp -R /usr/local/mysql/data/* /data/mysql/ #或mv /usr/local/mysql/data/* /data/mysql
5.修改mysql資料庫目錄許可權以及配置文件
chown mysql:mysql -R /data/mysql/
vim /etc/my.cnf
datadir=/data/mysql (制定為新的數據存放目錄)
vim /etc/init.d/mysqld
datadir=/data/mysql
6.啟動資料庫服務
service mysqld start
說明:根據以上的簡單6步操作,已經成功的資料庫目錄更換路徑了。
H. 如何修改MySQL資料庫表中的數據
可以使用 MySQL-Front這個軟體,非常好用.
軟體下載在這里
華軍軟體園
http://www.onlinedown.net/soft/33451.htm
軟體使用說明在這里
http://hi..com/hjl0735/blog/item/aa12aef599a38f20bc3109fa.html
試試吧,用過sqlserver的都會用.
圖文教程下載
天極網的
http://bbs.yesky.com/attachment.php?aid=74780
I. mysql資料庫表如何修改數據
你好
修改表的數據一般使用update語句
具體的話參考相關SQL文檔吧
不是幾句話能說明白的
祝你好運
望採納
J. MySQL資料庫修改一列內容
高效方案:
那麼能不能一條sql語句實現批量更新呢?
用CASE WHEN
mysql並沒有提供直接的方法來實現批量更新,但是可以用點小技巧來實現。
UPDATE mytable SET
myfield = CASE id
WHEN 1 THEN 'value'
WHEN 2 THEN 'value'
WHEN 3 THEN 'value'
END
WHERE id IN (1,2,3)
這里使用了case when 這個小技巧來實現批量更新。