ここのことはなかったことにするかもしれない

仕事がらみの記事を主として扱いますが、あくまで個人ブログです。2013年以前の記事は https://yellow-73.hatenablog.com/ にあります。

スーパーユーザ作ってテーブル作ってダンプするところまで

ユーザを作ってスーパユーザにする

mysql -u root

use mysql;
create user '(ユーザ名)'@'localhost';
set password for '(ユーザ名)'@'localhost' = '(password)';
grant all on *.* to '(ユーザ名)'@'localhost';

データベースを作りテーブルを作る

ここから '(ユーザ名)'@'localhost'でログインします。

mysql -p

``-p``は、実行前にプロンプトを出してパスワード求めるようにしてもらうためのオプションです。今後も使います。

CREATE DATABASE (データベース名);

USE (データベース名);

CREATE TABLE test (
  id INT PRIMARY KEY,
  geom GEOMETRY NOT NULL,
  SPATIAL INDEX (geom)
);

空間インデックスは後でも付けられますが、空間インデックスを構築する対象のフィールドにはNOT NULL制約が必要です。

ついでなんで、データも1行突っ込んでおきましょう。

INSERT INTO test SELECT 1, ST_GeomFromText('POINT(35 135)', 4326);

ダンプして別のデータベースにリストア

mysqldump (データベース名) -p --set-gtid-purged=OFF > foobar.sql
mysql -p mysql

CREATE DATABASE (新データベース名);
mysql -p -D (新データベース名) < foobar.sql