mysql建庫時提示Specified key was too long max key length is 1000 bytes的問題的解決方法
更新時間:2012年11月13日 10:26:47 作者:
本文將詳細(xì)提供mysql建庫時提示Specified key was too long max key length is 1000 bytes的問題的解決方法,有需求的朋友可以參考
索引字段長度太長,
1.修改字段長度
2.修改mysql默認(rèn)的存儲引擎
在/etc/mysql/my.cnf 的[mysqld] 下面加入default-storage-engine=INNODB
但是在建庫時已經(jīng)明確表明了需要使用INNODB引擎
Sql代碼
CREATE TABLE `acs` (
...
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
檢查當(dāng)前的引擎
mysql> show engines;
果然沒有InnoDB
查看是否支持動態(tài)加載, 重要的是have_dynamic_loading這行,如果是YES,那么繼續(xù)
mysql>show variables like "have_%";
安裝插件
mysql> INSTALL PLUGIN INNODB SONAME 'ha_innodb.so';
mysql> show engines;
Mysql建庫第一次接觸Mysql,和Oracle還是有差別的哦,下面簡單介紹Linux Mysql建庫過程。
#mysql
>CREATE USER 'bob'@'%' IDENTIFIED BY '123456'; //創(chuàng)建用戶bob.
>GRANT ALL PRIVILEGES ON *.* TO 'bob'@'localhost' IDENTIFIED BY '123456';
//設(shè)置bob可以本地登錄并賦所有權(quán)限給bob,因?yàn)閎ob是管理員哦!
>GRANT ALL PRIVILEGES ON *.* TO 'bob'@'%' IDENTIFIED BY '123456';
//用戶地址可以是localhost,也可以是ip地址、機(jī)器名字、域名。也可以用'%'表示從任何地址連接.
>FLUSH PRIVILEGES; //刷新授權(quán)
>CREATE DATABASE travel CHARACTER SET utf8 COLLATE utf8_general_ci; //創(chuàng)建數(shù)據(jù)庫travel并設(shè)置成utf8格式.
>quit
#mysql -uroot -p travel < travel20120410.sql //為了方便,我直接導(dǎo)入了一份數(shù)據(jù),root密碼默認(rèn)為空,所以后面直接跟數(shù)據(jù)庫名稱.
#mysql -ubob -p123456 回車
>SHOW DATABASES; //查看數(shù)據(jù)庫
>select user,host,password from mysql.user; //bob登錄,查看已經(jīng)存在的所有用戶
>\S 或者 SELECT CURRENT_USER(); //查看當(dāng)前用戶
>use travel;
>show tables;
>show grants; //查看自己的權(quán)限
>show grants for dba@localhost; //查看dba的權(quán)限
>revoke all on *.* from dba@localhost; //移除dba的權(quán)限
>update user set password=password("密碼") where user='root' //修改root密碼
#mysqladmin -uroot -p舊密碼 password 新密碼 //修改root密碼
#mysql -ubob -pbob -h192.168.19.182 travel //遠(yuǎn)程登錄到182這臺Mysql數(shù)據(jù)庫
1.修改字段長度
2.修改mysql默認(rèn)的存儲引擎
在/etc/mysql/my.cnf 的[mysqld] 下面加入default-storage-engine=INNODB
但是在建庫時已經(jīng)明確表明了需要使用INNODB引擎
Sql代碼
復(fù)制代碼 代碼如下:
CREATE TABLE `acs` (
...
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
檢查當(dāng)前的引擎
復(fù)制代碼 代碼如下:
mysql> show engines;
果然沒有InnoDB
查看是否支持動態(tài)加載, 重要的是have_dynamic_loading這行,如果是YES,那么繼續(xù)
復(fù)制代碼 代碼如下:
mysql>show variables like "have_%";
安裝插件
復(fù)制代碼 代碼如下:
mysql> INSTALL PLUGIN INNODB SONAME 'ha_innodb.so';
mysql> show engines;
Mysql建庫第一次接觸Mysql,和Oracle還是有差別的哦,下面簡單介紹Linux Mysql建庫過程。
#mysql
>CREATE USER 'bob'@'%' IDENTIFIED BY '123456'; //創(chuàng)建用戶bob.
>GRANT ALL PRIVILEGES ON *.* TO 'bob'@'localhost' IDENTIFIED BY '123456';
//設(shè)置bob可以本地登錄并賦所有權(quán)限給bob,因?yàn)閎ob是管理員哦!
>GRANT ALL PRIVILEGES ON *.* TO 'bob'@'%' IDENTIFIED BY '123456';
//用戶地址可以是localhost,也可以是ip地址、機(jī)器名字、域名。也可以用'%'表示從任何地址連接.
>FLUSH PRIVILEGES; //刷新授權(quán)
>CREATE DATABASE travel CHARACTER SET utf8 COLLATE utf8_general_ci; //創(chuàng)建數(shù)據(jù)庫travel并設(shè)置成utf8格式.
>quit
#mysql -uroot -p travel < travel20120410.sql //為了方便,我直接導(dǎo)入了一份數(shù)據(jù),root密碼默認(rèn)為空,所以后面直接跟數(shù)據(jù)庫名稱.
#mysql -ubob -p123456 回車
>SHOW DATABASES; //查看數(shù)據(jù)庫
>select user,host,password from mysql.user; //bob登錄,查看已經(jīng)存在的所有用戶
>\S 或者 SELECT CURRENT_USER(); //查看當(dāng)前用戶
>use travel;
>show tables;
>show grants; //查看自己的權(quán)限
>show grants for dba@localhost; //查看dba的權(quán)限
>revoke all on *.* from dba@localhost; //移除dba的權(quán)限
>update user set password=password("密碼") where user='root' //修改root密碼
#mysqladmin -uroot -p舊密碼 password 新密碼 //修改root密碼
#mysql -ubob -pbob -h192.168.19.182 travel //遠(yuǎn)程登錄到182這臺Mysql數(shù)據(jù)庫
您可能感興趣的文章:
- sql server建庫、建表、建約束技巧
- Mysql 建庫建表技巧分享
- SQL Server--怎樣用ADO在SQL SERVER中建庫,建表
- 詳解在MySQL中創(chuàng)建表的教程
- mysql建表常用sql語句個人經(jīng)驗(yàn)分享
- Oracle新建用戶、角色,授權(quán),建表空間的sql語句
- SQL Server 2008 阻止保存要求重新創(chuàng)建表的更改問題的設(shè)置方法
- 必須會的SQL語句(二) 創(chuàng)建表、修改表結(jié)構(gòu)、刪除表
- 一條SQL語句修改多表多字段的信息的具體實(shí)現(xiàn)
- 用SQL語句添加刪除修改字段、一些表與字段的基本操作、數(shù)據(jù)庫備份等
- 用sql命令修改數(shù)據(jù)表中的一個字段為非空(not null)的語句
- SqlServer編寫數(shù)據(jù)庫表的操作方式(建庫、建表、修改語句)
相關(guān)文章
ubuntu20.04配置mysql8.0的實(shí)現(xiàn)步驟
本文主要介紹了ubuntu20.04配置mysql8.0的實(shí)現(xiàn)步驟,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-05-05Mysql連接本地報錯:1130-host?...?is?not?allowed?to?connect?t
這篇文章主要給大家介紹了關(guān)于Mysql連接本地報錯:1130-host?...?is?not?allowed?to?connect?to?this?MySQL?server的解決方法,文中通過圖文介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03mysqld-nt: Out of memory (Needed 1677720 bytes)解決方法
這篇文章主要介紹了mysqld-nt: Out of memory (Needed 1677720 bytes)解決方法,需要的朋友可以參考下2014-12-12MySql字符串拆分實(shí)現(xiàn)split功能(字段分割轉(zhuǎn)列)
本文主要介紹了MySql字符串拆分實(shí)現(xiàn)split功能(字段分割轉(zhuǎn)列),文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-05-05