본문 바로가기

mysql5

Python - sqlalchemy bigint 사용한 id 값 고려 Python 의 기본 ORM 을 사용한다면, id 필드를 통한 unique 값 생성이 기본이다. 기본값은 INT인데, INT로 생성할 경우 최대 생성 가능한 컬럼이 2,147,483,647 까지 가능하다. 만약 이값을 넘어간다면, 추후 BIGINT로 변경하는 것을 고려해야 한다. 따라서 되도록 초기 구성시 INT보다 큰 값을 제공하는 BIGINT를 이용하기를 추천한다. https://docs.sqlalchemy.org/en/14/core/type_basics.html Column and Data Types — SQLAlchemy 1.4 Documentation A type for fixed precision numbers, such as NUMERIC or DECIMAL. This type returns.. 2021. 5. 4.
Django - MySQL/MariaDB 연결하기 대부분의 서비스용도로 사용하다면, 기본적으로 제공하는 파일 기반의 Database인 SQLlite 보다는 MySQL, 혹은 MariaDB를 통해 Database를 사용하는 것이 확장성에 좋기 때문에 MySQL/MariaDB 연결 방법에 대해서 정리해 본다. 1. mysqlclient 설치 가장 먼저 해야 할 일은 MySQLClient를 설치하는 것이다. Visual Studio 기준으로 env 에서 마우스 우클릭을 통해 Manage Python Packages 에서 mysqlclient를 입력하여 설치할 수 있으며, 이는 pip를 통해 설치한 것과 동일하다. pip install mysqlclient 설치가 완료되면, 패키지가 추가된 것을 확인 할 수 있다. 2. DATABASE 설정 변경 Django의.. 2021. 3. 24.
MySQL/MariaDB - root 계정 초기화/비밀번호 재설정 오늘은 MiaraDB 작업중에 발생한 root 비밀번호 분실에 따른 재설정을 진행하였다. 이유는 정확히 모르지만, sudo mysql_secure_installation 작업 도중 root 비밀번호 변경에서 강제 중지를 하였더니 root 계정이 사라져 버렸다. 이를 해결 하기 위해서 인터넷의 정보를 확인했고 여기에 정리하는 차원으로 남긴다. 방법은 MariaDB와 MySQL 모두 동일한 방식으로 사용이 가능하다. 아마 root 계정의 비밀번호를 분실했거나, 계정을 삭제한 상황이라면, 아래 방법이 유용하다. 처음에 찾은 글은 재설정하는 방법이였는데, 결과적으로 재설정이나 새로 root 계정을 생성하는 과정을 비슷하다고 할 수 있다. 1. MySQL/MariaDB Safe Mode 시작 처음 진행할 부분은 .. 2021. 1. 25.
MariaDB - Specified key was too long Specified key was too long; max key length is 767 bytes 이는 InnoDB 엔진에 관련된 내용이다. MariaDB, MySQL은 하나의 Row이 가질 수 있는 최대 Index 길이의 제한이 있고 이 제한이 767 Bytes 까지이다. 이 제한을 풀기 위해서는 set global innodb_large_prefix = ON; 이후 생성하고자 하는 테이블 옵션에 ROW_FORMAT=DYNAMIC 옵션을 추가하여 해결이 가능하다. set global innodb_large_prefix = ON; 위 옵션이 정상적으로 실행되었다면 테이블을 만들때 엔진 옵션으로 DYNAMIC을 추가하면 정상적으로 테이블 생성이 가능하다. ENGINE=INNODB ROW_FORMAT=DY.. 2020. 11. 6.
MYSQL – 최대 길이가 ‘250’인 문자열 또는 배열 형식이어야 합니다. .NET MVC에서 MYSQL을 연결하여 데이터베이스에 기록을 하다보면, 다음과 같은 오류를 만날 수 있습니다. Message “하나 이상의 엔터티에 대해 유효성을 검사하지 못했습니다. 자세한 내용은 ‘EntityValidationErrors’ 속성을 참조하십시오.” Exception 위 오류를 확인 하였을 때 보통 MYSQL의 제한에 의해 발생하는 오류로 아래 경로를 따라 들어가면 확인 할 수 있습니다. ex -> EntityValidationErrors -> ValidationErrors -> [0] -> ErrorMessage 여기에서 오늘 특이하게 경험한 오류코드는 다음과 같습니다. ErrorMessage “필드 xxx(는) 최대 길이가 ‘250’인 문자열 또는 배열 형식이어야 합니다.” 위 오류.. 2020. 10. 28.