[interchange] Adjust MySQL key lengths to 191 characters

Josh Lavin interchange-cvs at icdevgroup.org
Sat Feb 17 00:15:37 UTC 2018


commit d251b9be6b1d70f36238c43698597d8200bf0bf5
Author: Josh Lavin <digory at cpan.org>
Date:   Fri Feb 16 16:12:57 2018 -0800

    Adjust MySQL key lengths to 191 characters
    
    - since default encoding is utf8mb4:
        ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci
    - the max index prefix length is 767 bytes
    - utf8mb4 max character length is 4 bytes, so 4*191 = 764
    - per: https://stackoverflow.com/a/31474509

 dist/strap/dbconf/mysql/userdb.mysql |    6 +++---
 1 files changed, 3 insertions(+), 3 deletions(-)
---
diff --git a/dist/strap/dbconf/mysql/userdb.mysql b/dist/strap/dbconf/mysql/userdb.mysql
index 66153e3..03ce40d 100644
--- a/dist/strap/dbconf/mysql/userdb.mysql
+++ b/dist/strap/dbconf/mysql/userdb.mysql
@@ -1,7 +1,7 @@
 Database  userdb  userdb.txt   __SQLDSN__
 Database  userdb  DEFAULT_TYPE varchar(255)
-Database  userdb  COLUMN_DEF   "username=varchar(255) NOT NULL PRIMARY KEY"
-Database  userdb  COLUMN_DEF   "usernick=varchar(255)"
+Database  userdb  COLUMN_DEF   "username=varchar(191) NOT NULL PRIMARY KEY"
+Database  userdb  COLUMN_DEF   "usernick=varchar(191)"
 Database  userdb  COLUMN_DEF   "password=varchar(64) NOT NULL"
 Database  userdb  COLUMN_DEF   "expiration=varchar(32)"
 Database  userdb  COLUMN_DEF   "accounts=BLOB"
@@ -30,7 +30,7 @@ Database  userdb  COLUMN_DEF   "created=varchar(32)"
 Database  userdb  COLUMN_DEF   "credit_limit=varchar(16)"
 Database  userdb  COLUMN_DEF   "db_acl=BLOB"
 Database  userdb  COLUMN_DEF   "dealer=varchar(32)"
-Database  userdb  COLUMN_DEF   "email=varchar(255)"
+Database  userdb  COLUMN_DEF   "email=varchar(191)"
 Database  userdb  COLUMN_DEF   "fax=varchar(30)"
 Database  userdb  COLUMN_DEF   "file_acl=BLOB"
 Database  userdb  COLUMN_DEF   "fname=varchar(30)"



More information about the interchange-cvs mailing list