반응형

MariaDB 108

mariadb 10 덤프를 mysql 5.5로 내보내기

mariadb 10 덤프를 mysql 5.5로 내보내기 mysqldump 등을 사용하여 miadb 10 서버에서 mysql 5.5 서버로 Import하는 모든 데이터베이스 덤프를 작성하는 방법이 있습니까?현재 mariadb만의 기능으로 인해 덤프에 문제가 발생하고 있습니다. 감사해요.사용하다mysqldump --compatible=ansi --all-databasesANSI 모드로 내보냅니다.언급URL : https://stackoverflow.com/questions/27233335/export-mariadb-10-dump-to-mysql-5-5

source 2022.12.05

동일한 데이터를 가진 SQL의 최대 개수(*) 오류

동일한 데이터를 가진 SQL의 최대 개수(*) 오류 가장 많이 구매한 사용자를 얻기 위해 SQL 쿼리를 작성했습니다. SELECT name, count(*) as C FROM sells GROUP BY user_id ORDER BY C LIMIT 1 단, 구매 수가 같은 사용자가 2명 있는 경우 이 쿼리는 검출할 수 없습니다.해결책은 무엇인가?서브쿼리 시행: SELECT name, count(*) as C FROM sells GROUP BY user_id HAVING C >= ALL (SELECT count(*) FROM sells GROUP BY user_id) 이 기능은 모든 SQL 버전에서 사용할 수 있습니다.LIMIT서브쿼리에서최대 카운트를 가져오는 하위 쿼리를 작성합니다.그 후 사용HAVING해..

source 2022.11.26

도커 ufw를 호스트 시스템에 연결

도커 ufw를 호스트 시스템에 연결 UFW에서 도커를 시험해 봤는데 이걸 많이 읽었어요. 도커 이미지에서 호스트 머신의 mariadb 데이터베이스에 접속하는 것이 목표였습니다. Host (running ufw) -> docker container 1 - mediawiki -> Database (onHost) -> docker container 2 - phpwebserver -> Database (onHost) -> docker container 3 - nextcloud -> Database (onHost) -> ....... I 기본적으로는 도커는 비활성화할 수 있는 iptables를 사용합니다. /etc/docker/daemon.json { "iptables": false } 그 후 설정 /etc/de..

source 2022.11.26

Maria의 JSON 값 비교DB

Maria의 JSON 값 비교DB MariaDB의 2개의 JSON 값을 비교하려면 어떻게 해야 하나요?다음과 같은 두 가지 값{"b": 1, "a": 2}그리고.{"a": 2, "b": 1}같아야 합니다.MariaDB에는 JSON 값의 요소를 재정렬하는 기능이 포함되어 있습니까?이러한(비공통) 비교가 필요한 경우 저장하기 전에 표준적인 방법으로 JSON을 구축하십시오.당신처럼 단순한 JSON에게 확실한 방법은 키를 알파벳 순으로 정렬하는 것입니다.이 방법은 JSON에 사용하는 "encode" 라이브러리에 따라 달라집니다.JSON_EXTRACT 를 사용합니다.JSON_EXTRACT 는, JSON 문자열내의 디짓의 위치에 관계없이 사용할 수 있습니다. 쿼리 SELECT JSON_EXTRACT(@json_st..

source 2022.11.26

이것은 MariaDB의 ROUND 기능의 오동작입니까?

이것은 MariaDB의 ROUND 기능의 오동작입니까? 현재 작업 중인 프로젝트에서 백엔드와 프런트엔드에서 같은 계산을 하고 있는 자신을 발견했습니다.계산은 두 숫자와 다른 숫자의 비율의 곱을 반올림하는 것이다. 즉, 라운드 대 라운드 표현은 다음과 같은 형식이다. x / y * n 프런트엔드는 자바스크립트를 사용하고 백엔드는 MariaDB를 사용하고 있습니다.x=41, y=60 및 n=30의 경우 프런트 엔드는 21로 표시됩니다. 41 / 60 * 30 20.5이지만 MariaDB의 구현은ROUND()함수는 내가 이 표현에 전달했을 때 20을 준다! ROUND(41/60*30,0) (MariaDB)가 평가하는데도 41 / 60 * 30 올바른 결과 20.199에 도달합니다. 20.5(20.5000)를 ..

source 2022.11.26

FOUND_ROWS가 있는 SQL_CALC_FOUND_ROWS는 항상 1을 반환합니다.

FOUND_ROWS가 있는 SQL_CALC_FOUND_ROWS는 항상 1을 반환합니다. select SQL_CALC_FOUND_ROWS, col1 , mytable.id from mytable group by col1; select found_rows(); select found_rows() , col1 , mytable.id from mytable group by col1; 위의 쿼리는 검색된 행에 대해 항상 1이 됩니다.php 7.1과 maria db 10.1을 사용하고 있습니다. 제 백엔드는 5.5로 mysql에 DB::raw 요청을 하고 있습니다.서버 아파치 램프 서버. 버그인가요? 아니면 다른 방법이 있나요?해결책 1: mysql 버전을 확인해 주세요.이 오류는 5.6.*에 존재하며 5.6.11..

source 2022.11.25

Test Containers Framework가 도커 deamon에 연결할 수 없습니다.

Test Containers Framework가 도커 deamon에 연결할 수 없습니다. 테스트 컨테이너가 다음과 같이 mariadb 인스턴스를 구축하도록 하겠습니다. connection = DriverManager.getConnection("jdbc:tc:mariadb:5.6.23:///datavault"); 하지만 이 로그는 다음과 같습니다. 01:03:00.438 [main] DEBUG o.t.jdbc.ContainerDatabaseDriver - Container not found in cache, creating new instance 01:03:00.540 [main] DEBUG o.t.u.TestcontainersConfiguration - Testcontainers configuration..

source 2022.11.25

Linux 위의 MariaDB | .sql 데이터베이스 접근

Linux 위의 MariaDB | .sql 데이터베이스 접근 SQL을 독학하고 있습니다.SQLzoo 과정을 수료하고 무료 Microsoft 테스트 데이터베이스와 MariaDB를 클라이언트로 사용하여 손을 더럽히고 싶었습니다.데이터베이스를 다운로드하여 다음 경로에 저장했습니다. /usr/bin/northwind_sql 데이터베이스에 액세스하기 위해 다음 명령을 시도했지만 gianluca@gianluca-Aspire-S3-391 ~ $ mysql -u gianluca -p -h localhost northwind_mysql Enter password: ERROR 1044 (42000): Access denied for user 'gianluca'@'localhost' to database 'northwind..

source 2022.11.25

지정된 행을 삽입할 때 MariaDB는 타임스탬프를 저장합니까?

지정된 행을 삽입할 때 MariaDB는 타임스탬프를 저장합니까? 저는 MariaDB를 사용하여 큐를 에뮬레이트하는 레거시 애플리케이션을 취급하고 있습니다.중요한 점 중 하나는 원래 설계가 큐에 메시지가 삽입된 시간을 삽입하지 않는다는 것입니다. 즉, 메시지가 처리되는 순서가 보장되지 않습니다. 현재 MariaDB 인스턴스를 하나만 사용하고 있기 때문에 메시지가 순서대로 처리되고 있는 것 같습니다만, 이 작업을 계속하기 위해 created_on 열을 추가하고 싶습니다. 질문입니다만, created_on 컬럼을 다시 채워야 하는데, MariaDB가 지정된 행을 데이터베이스에 삽입한 시간을 저장했는지 궁금했습니다. 스키마에 포함되지 않는 한 가능성이 낮지만 때때로 데이터베이스는 이러한 종류의 것을 캡처하는 비..

source 2022.11.25

Mysql TRIM()이 작동하지 않습니다.

Mysql TRIM()이 작동하지 않습니다. 이유는 모르겠지만TRIM()또는RTRIM()나한테는 안 먹혔어 SELECT TRIM('YV4.3x2.8SA-2 '); 돌아오고 있다'YV4.3x2.8SA-2 '. 문자열에 공백이 포함되어 있을 수 있기 때문에 모든 공백을 제거할 수 없습니다.그래서 마지막 글자는 '아니요' 입니다.0x20(스페이스).이것은 Unicode 코드 포인트 U+00A0의 UTF-8 부호화이며, 비브레이킹스페이스라고도 불립니다. 다음을 사용하여 이러한 항목을 제거하려면TRIM(),통과하다convert(0xC2A0 using utf8mb4)위해서remstr: select TRIM(convert(0xC2A0 using utf8mb4) FROM 'YV4.3x2.8SA-2 '); (SQL 바이..

source 2022.11.25
반응형