MySQL5 7快速修改表中字段長度

2022-06-07 07:18:08 字數 939 閱讀 3478

標籤:段長度

mysql

mysql5.7

表中字修改

引數sql

執行在mysql

5.5版本時,商用環境公升級,有乙個表存在六千多萬資料,公升級時需要修改這個表其中乙個varchar型別欄位的長度,當時用了大概4個多小時,還沒有結束,之後我們系統mysql公升級到5.7版本,再一次公升級模擬測試中,又修改了該錶的字段長度,這次用時為7個多小時,下面是記錄的時間。(進入mysql命令列,執行tee

upgrade.log,之後執行的sql都會記錄到該log中,當不需要記錄時,執行notee)

queryok,0rows affected (7hours 48min 9.15sec)records:0duplicates:0warnings:0

雖然沒有sql資訊,但該條sql執行時,使用如下命令檢視的info資訊確實就是在修改該錶,所以可確定,這個時間就是這張表的字段修改造成的

show full processlist
在5.7上官網上檢視online ddl operations介紹,發現新增某個引數後,修改表結構不用拷貝資料,這樣就會大大的節省了時間,改引數為algorithm=inplace,但該引數只能用於字段長度變長的情況,否則值應該填寫為copy

mysql>alter table db.table modify column ipaddress varchar(60),algorithm=inplace;queryok,0rows affected (0.06sec)records:0duplicates:0warnings:0

新增了改引數後,修改字段長度的時間從七個多小時一下子就下降到了0.06秒,可以說是瞬間就執行結束,且修改成功

標籤:段長度,mysql,mysql5.7,表中字,修改,引數,sql,執行

mysql5 7修改密碼

關閉正在執行的mysql服務。net stop mysql 開啟dos視窗,轉到mysql bin目錄。輸入mysqld skip grant tables 回車。skip grant tables 的意思是啟動mysql服務的時候跳過許可權表認證。my.ini 中放開這行 再開乙個dos視窗 因為...

mysql5 7密碼修改

檢視臨時密碼 root god grep password var log mysqld.log 2020 09 11t10 58 46.152697z 1 note a temporary password is generated for root localhost p jp 6d 4rw登入...

mysql 5 7密碼修改

一 停止mysqld服務 二 編輯配置檔案 有的linux版本是 etc my.cnf 有的linux版本是 etc mysql mysql.conf.d mysqld.cnf windows配置檔案名字為my.ini 在配置檔案中新增配置項 mysqld skip grant tables 三 重...