반응형
bash의 변수에서 mysql 데이터베이스 생성
새 이름에 대한 변수를 사용하여 데이터베이스를 만들 bash 스크립트를 작성하려고 하는데 구문에 맞지 않습니다.나는 bash에 대해 거의 아무것도 모릅니다.내가 db 비밀번호를 입력한 후에 계속해서 1행에 구문 오류가 있다고 말합니다.
setup.sh
#!/bin/bash
db="mytest"
scl enable rh-mariadb 'mysql -u user -p -e "set @dbname=$db; \. setup_db.sql"'
setup_db.sql
SET @query = CONCAT('CREATE DATABASE `', @dbname, '`');
PREPARE stmt FROM @query;
EXECUTE stmt;
DEALLOCATE PREAPRE stmt;
bash에 $db가 있는 db 이름을 하드코딩하면 다음 오류가 발생합니다.
'필드 목록'의 'mytest' 열을 알 수 없음
DB 이름을 따옴표로 묶어야 합니다. 그렇지 않으면 열 이름으로 처리됩니다.
scl enable rh-mariadb 'mysql -u user -p -e "set @dbname=\"$db\"; \. setup_db.sql"'
언급URL : https://stackoverflow.com/questions/68837059/create-mysql-database-from-variable-in-bash
반응형
'programing' 카테고리의 다른 글
포인터가 자신을 가리킬 수 있습니까? (0) | 2023.06.20 |
---|---|
스프링 부트의 통합 테스트를 위한 리퀴브 베이스 변경 세트를 만드는 방법은 무엇입니까? (0) | 2023.06.20 |
SQL: UNION을 사용하고 특정 선택에 따라 주문하는 방법은 무엇입니까? (0) | 2023.06.20 |
ASP에서 dll.refresh 파일이란 무엇입니까?그물? (0) | 2023.06.20 |
ASP.Net MVC에서 사용자 개체의 사용자 ID를 가져오려면 어떻게 해야 합니까? (0) | 2023.06.20 |