前人未踏の領域へ アプリ開発編

Android, iOSアプリ開発に関する調査メモ置き場。ほとんどAndroid。はてなダイアリーから移行したため古い記事にはアプリ以外も含まれます。

管理系コマンド雑記

バージョン確認

$ mysql --version

サーバー起動・停止(MacOS X

起動
$ /usr/local/mysql/bin/mysqld_safe -u {user_name}
または
$ sudo /usr/local/mysql/support-files/mysql.server start
停止
$ sudo ./bin/mysqladmin -p shutdown
または
$sudo /usr/local/mysql/support-files/mysql.server stop
再起動
sudo /usr/local/mysql/support-files/mysql.server restart

ログイン

>mysql -u [username] -p

設定確認

status;

ユーザー確認

select user();
select current_user();
#一覧
select user,host from mysql.user;

ユーザー作成

$ mysql --user=root -p
mysql> grant all privileges on *.* to 'hoge'@'localhost' identified by 'password' with grant option;

外部からのアクセスを許可

mysql> grant all privileges on *.* to 'hoge'@'%' identified by 'password' with grant option;

パスワード変更

UPDATE mysql.user SET Password=PASSWORD('password') WHERE User='root';
FLUSH PRIVILEGES;

#5.7.5以前
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('MyNewPass');

#5.7.6以降
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';

詳細
http://dev.mysql.com/doc/refman/5.1/ja/adding-users.html

コマンド一覧

操作 コマンド 説明
データベース一覧 show databases;
データベース指定 use データベース名;
テーブル一覧 show tables; データベースが選択されていること
データベース作成 create database データベース名
データベース削除 drop database データベース名
キャラクタセット確認 show variables like 'character_set%';
ステータス確認 show status;
システム変数の確認 show variables; like句が使える
テーブルステータス確認 show table status;
特定のテーブル状態を詳しく show table status like 'テーブル名' \G;

DBのダンプ、リストア

//ダンプ
shell> mysqldump -h host_name -u user_name -p db_name > dump.sql
//リストア
shell> mysql -u user_name -p db_name < dump.sql

詳細
http://dev.mysql.com/doc/refman/5.1/ja/backup.html

ビープ音を消す

$ sudo vi /etc/my.cnf
[mysql]
no-beep

起動時にMySQLを起動するかどうかの設定

MySQLStartupItem.pkgをインストールする。/Library/StartupItems/MySQLCOMができる。/etc/hostconfigに値が設定されるので後で変更したい場合にはここを変更する。「-NO-」なら自動起動しない。

sudo vi /etc/hostconfig
MYSQLCOM=-NO-
or
MYSQLCOM=-YES-

キャラクターセットの設定

確認

mysql> show variables like 'character%';
$sudo vi /etc/my.cnf
[mysqld]
default-character-set = utf8
[mysqldump]
default-character-set = utf8
[mysql]
default-character-set = utf8

テーブルごとの設定

mysql> alter table [テーブル名] convert to character set utf8

SELECT区の出力結果をシンプルにする

見出し、行番号、など一切を表示しない。

$ mysql -u user_name  -p -N -L -r -s table_name