cd /usr/local/mysql; sudo ./bin/safe_mysqld –user=mysql &
sudo mysqladmin shutdown
mysqld_safe –relay-log=/var/lib/mysql/mysql-relay-bin –relay-log-index=/var/lib/mysql/mysql-relay-bin -O max_connect_errors=1000 &
mysqladmin shutdown -u root -p
export PATH=/usr/bin:/bin:/usr/local/mysql/bin
case $1 in
start)
cd /usr/local/mysql; ./bin/safe_mysqld --user=mysql &
;;
stop)
mysqladmin shutdown
;;
*)
echo "usage `basename $0` (start|stop)"
;;
esac
mysql -u root -p
\q
mysql -u <user> -p<password> <database> -e “<SQL>“
※-p とパスワードの間にスペースを入れない。 * 接続状況を表示\\ status;
show databases;
create database <データベース名>;
use <データベース名>;
show tables;
desc <テーブル名>;
show table status from <データベース名>;
SELECT host,user FROM mysql.user;
GRANTALL PRIVILEGES ON <データベース名>.* TO <ユーザ名> IDENTIFIED BY '<パスワード>';
SHOW GRANTS FOR <user>;
SET PASSWORD FOR <user>@'<host>' = password('<new password>');
DELETE FROM mysql.user WHERE user='<ユーザ名>';
DELETE FROM mysql.user WHERE user='<ユーザ名>' and host='<ホスト名>';\\
* 合わせて権限も削除\\
REVOKE ALL PRIVILEGES ON * . * FROM <ユーザ名>;\\
REVOKE ALL PRIVILEGES ON * . * FROM <ユーザ名>@'<ホスト名>';\\
* 権限の再読み込み\\
FLUSH PRIVILEGES;
SHOW TABLE STATUS FROM <データベース名>;
SHOW CREATE TABLE <テーブル名>;
ALTER TABLE <テーブル名> ENGINE=<エンジン名>;
CREATE TABLE <テーブル名> … ENGINE=<エンジン名>;
SHOW ENGINES;
vi /etc/mysql/my.cnf
<code>
[mysqld]
default-storage-engine=INNODB
</code>
show engine innodb status\G
SHOW CREATE DATABASE <データベース名>;
alter database <データベース名> default character set utf8;
/etc/mysql/my.cnf を編集。
<code>
[client]
default-character-set=utf8
[mysqld]
default-character-set=utf8
character-set-server=utf8
[mysqldump]
default-character-set=utf8
[mysql]
default-character-set=utf8
</code>
SHOW variables LIKE '%char%';
show global variables;
show session variables;
show slave status;
show variables where variable_name='binlog_format';
MySQL 5.1.8 より、第 3 のオプションが利用可能になりました。ミックス ベース レプリケーション (MBR) です。MBR では、デフォルトでステートメント ベース レプリケーションが行われますが、自動的に行ベース レプリケーションに切り替わります。次のケースがそれに該当します。項5.1.2.2. 「ミックス レプリケーション フォーマット」 も参照してください。
MIXED モードで実行している場合、次の条件下にあるレプリケーションはステートメント ベースから行ベースに自動的に切り替わります。
MySQL 5.1.12 から、ミックス ベース レプリケーション (MBR) がデフォルト フォーマットで、指定のない限り、すべてのレプリケーション環境に対応します。
http://dev.mysql.com/doc/refman/5.1/ja/replication-formats.html より
log=/var/log/mysqld-query.log
create database <データベース名> CHARACTER SET utf8;
grant all on <データベース名>.* to <ユーザ>@<接続許可ホスト> identified by '<パスワード>';
(例)
<code>
grant all on mydb.* to userfoo@localhost identified by 'password';
</code>
※データベース名を * にすると、すべてのデータベースに対する権限が与えられます。\\ ※@ の後に続くホスト名に "%" を指定すると、すべてのホストから接続することができます。\\ (% をダブルクォートで囲む必要があります。)\\ 192.168.1.0/24 からだけ接続できるようにする場合は "192.168.1.%" と指定します。\\ * テーブル作成\\ create table <テーブル名> (id integer); * テーブル作成(DBエンジン指定あり)\\ create table <テーブル名> (id integer) type=InnoDB; * テーブル作成(PK と DBエンジンを指定)\\ create table <テーブル名> (id integer, name varchar(16) constraint PK_XXX primary key (id)) type=InnoDB; * DBエンジンを後から指定\\ alter table <テーブル名> type=InnoDB; * ユニークインデックス作成\\ create unique index <インデックス名> on <テーブル名> (id1, id2); * 重複インデックス作成\\ create index <インデックス名> on <テーブル名> (id1, id2); * カラム定義を変更\\ alter table <テーブル名> change <変更前カラム名> <変更後カラム定義>;\\ (例) <code>alter table account change name name varchar(32) not null;</code>
mysqldump -u user -p password -x –all-databases | gzip > / tmp/mysql.dump.gz
mysql -u root -p password < dumpdata
または\\ gzip -dc / tmp/mysql.dump.gz | mysql -u root -p password * スナップショット\\ mysqlsnapshot -u user -p password -s /tmp --split -n * ホットコピー\\ mysqlhotcopy -u user -p password <データベース名> /tmp