MariaDB / DATABASE / 만들기, 삭제하기, 이름 변경하기

로그인

MariaDB에 로그인합니다. root 계정으로 로그인 한다면

mysql -u root -p

데이터베이스 목록을 조회합니다.

MariaDB [(none)]> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
+--------------------+
3 rows in set (0.00 sec)

데이터베이스 만들기

test라는 이름의 데이터베이스를 만듭니다.

MariaDB [(none)]> CREATE DATABASE test;
Query OK, 1 row affected (0.00 sec)

데이터베이스 목록을 조회합니다.

MariaDB [(none)]> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| test               |
+--------------------+
4 rows in set (0.01 sec)

이미 존재하는 데이터베이스와 같은 이름의 데이터베이스를 만들려고 하면 에러가 납니다.

MariaDB [(none)]> CREATE DATABASE test;
ERROR 1007 (HY000): Can't create database 'test'; database exists

같은 이름의 데이터베이스가 존재하지 않을 때만 만들고 싶다면 다음과 같이 합니다.

MariaDB [(none)]> CREATE DATABASE IF NOT EXISTS test;
Query OK, 0 rows affected, 1 warning (0.00 sec)

마침표 등 특별한 문자를 포함하는 경우에 에러가 납니다.

MariaDB [(none)]> CREATE DATABASE test.test;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '.test' at line 1

억음 부호로 이름을 감싸면 에러가 나지 않습니다.

MariaDB [(none)]> CREATE DATABASE `test.test`;
Query OK, 1 row affected (0.00 sec)

데이터베이스 삭제하기

test.test 데이터베이스를 삭제합니다.

MariaDB [(none)]> DROP DATABASE `test.test`;
Query OK, 0 rows affected (0.00 sec)

데이터베이스 이름 변경하기

데이터베이스 이름을 바로 변경할 수 없으므로, 다른 방법을 이용합니다. 예를 들어 test를 test1로 이름을 바꾸고 싶다면...

test1 데이터베이스를 만듭니다.

MariaDB [(none)]> CREATE DATABASE test1;
Query OK, 1 row affected (0.00 sec)

mysqldump로 test를 백업합니다.

mysqldump -u root -p test > test.sql

test1로 복원합니다.

mysql -u root -p test1 < test.sql