MySQL/情報
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
#contents
&tag(MySQL);
* インデックス [#m327809e]
#taglist(tag=MySQL)
* [[コマンド]] [#b414e776]
- [[MySQL 逆引きリファレンス>http://mysql.javarou.com/]]
「MySQL 逆引きリファレンス」はオープンソースの RDBMS で...
** system [#o4c565c8]
- [[第77回 mysqlコマンドラインクライアント:MySQL道普請...
\! (systemコマンド)
systemコマンドはUnixのshellコマンドを実行します。
- [[よく使うMySQLコマンド集 - Qiita>https://qiita.com/Cyb...
pagerコマンドでクエリの結果を見やすくする ~pager less~
** 更新通知 [#xe151dcd]
- [[GitHub - Cyclonecode/mysql-notification: Example of a...
A simple example of using a user defined function (UDF) ...
-- 関連:[[PostgresSQL]]
-- コメント:[[MySQL/8.0]].22, [[BigSur]]にて通知の受信を...
- [[cybozu.com の MQ と性能問題 - Cybozu Inside Out | サ...
UDF は MySQL plugin の仕組みの1つで、SQL から利用可能な...
* [[ツール]] [#f498d7f4]
- [[MySQL :: Download MySQL Workbench>http://dev.mysql.co...
- [[Sequel Pro>http://www.sequelpro.com/]]
-- [[MacからMySQLをさわるならSequel Proをオススメする5つ...
** [[Ruby]] [#y3978e79]
- [[ruby-mysql · GitHub>https://github.com/tmtm/ruby-mysq...
MySQL connector for Ruby. pure Ruby version.
- [[YUKASHIKADO Inc. 開発ブログ • HomebrewなMySQLを使って...
gem install mysql2 -- --with-mysql-lib=/usr/local/Cellar...
--with-mysql-config=/usr/local/Cellar/mysql/5.6.10/bin/m...
- [[bundle install 時、mysql2でエラー - Qiita>https://qii...
解決策
$ bundle config --local build.mysql2 "--with-ldflags=-L/...
- [[bundlerでmysql2のインストールが失敗する - NullPointer...
$ brew install openssl
$ bundle config --local build.mysql2 "--with-ldflags=-L/...
** [[Homebrew]] [#qfc1f5ec]
- [[HomebrewでMySQLをインストールする時に知っておきたいこ...
** [[Java]] [#bbfe29f0]
- [[JavaでMySQLに接続してデータ操作をする - TASK NOTES>ht...
JavaからMySQLへ接続するにはJDBCドライバが必要です。 MySQ...
ダウンロードしたら解凍して、中のjarファイルを使用します。
- [[JavaでMySQLのデータベースにトランザクション処理 | De...
今回は複数のSQL文の登録とトランザクション処理を紹介しま...
発生した場合に、その全ての処理を無かった事にしてくれます。
- [[[Java]iciqlで簡単DBアクセス[ORマッパー] | Developers...
iciqlの特徴は以下のとおり。
・単一のjarで提供される
・設定ファイルなしで使える
・DBからモデル生成できるツール付き
* データ [#l99f3552]
** [[日時]]型 [#i4fe5743]
- [[いぞるで雑記annex mysqlのtimestamp型を使って更新日時...
CREATE TABLE `test` (
name varchar(10) ,
modified_date timestamp NULL default CURRENT_TIMESTAMP o...
create_date timestamp NOT NULL default '0000-00-00 00:00...
)
INSERT INTO test ( name , create_date ) VALUES ( 'foo' ,...
- [[[MySql] 登録日時の初期値と更新日時の自動更新 | So-Kai...
current_timestamp を設定できるのは1カラムだけ
- [[[ MySQL ] n分前, n時間前, n日後の日付を取得する ( INT...
7日後の日時を取得する
mysql> SELECT CURRENT_TIMESTAMP + INTERVAL 7 DAY;
** Upsert (Insert or Update) [#sa71a3d1]
- [[mysql - If exists then update else insert - Database ...
delimiter $$
create procedure select_or_insert()
begin
IF EXISTS (select * from users where username = 'someth...
update users set id= 'some' where username = 'somethi...
ELSE
insert into users (username) values ('something');
END IF;
end $$
delimiter ;
- [[MySQLでUPSERTする方法 - TIPS | Code Macchiato - より...
upsertとは?
tableにレコードがなければINSERT, 存在すればUPDATEという...
* [[運用管理]] [#rb803307]
** トラブル [#jcb1baa3]
- [[誰も教えてくれなかったMySQLの障害解析方法 - Qiita>htt...
それほどDBに詳しくないアプリエンジニアが何かトラブった時...
** mysql_upgrade [#m1f5f6de]
- [[yum で MySQL バージョンアップ後に実行するチェックコマ...
アップグレードした新しい MySQL のシステムとの互換性が保...
-- [[MySQL 8で、mysql_upgradeがdeprecatedになった - Qiita...
MySQL 8.0.16から、mysql_upgradeはdeprecatedとのこと
** 設定(メモリ) [#q21a3fbe]
- [[MySQL最低限のメモリ設定 - Qiita>http://qiita.com/zabu...
環境にもよりますが、MySQLのデフォルトのメモリ関連の設定...
- [[5分で出来るMySQLのお手軽チューニング - わーくあうと!...
今回はスレッド数が多すぎたので max_connections を 151ー...
- [[MySQLメモリ設定を変更して、前後の設定値を比較してみた...
MySQLメモリ設定を変更しました。設定項目は抜粋になります...
- [[MySQLのメモリ設定の勘所 – sawara.me>http://sawara.me/...
MySQLで使用する全体的なメモリ使用量を計算するには
グローバルバッファ + (スレッドバッファ × コネクション数...
という計算式に当てはめればいいことになります。
- [[MySQL 5.6のインストール後にチューニングすべき項目 | Y...
innodb_buffer_pool_size - デフォルトは128M。これは、メモ...
メモリを使うかを指定するものなので、設定すべき重要な値だ。
- [[innodb_buffer_pool_sizeのチューニング:どれくらい割り...
よく「サーバの全メモリの50%から70%くらい」とか「80%」...
- [[DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチュ...
innodb_buffer_pool_size
InnoDBのデータやインデックスをキャッシュするためのメモリ...
** [[バックアップ]] [#ua7a02ef]
- [[mysqldumpでMySQLのデータをバックアップ - シングスブロ...
- [[MySQLのバックアップ/復元(ダンプ/インポート/dump/impor...
mysqldump -u root -p -x --all-databases > dump.sql
- [[MySQLのコマンドラインで-pオプションを使わずにパスワー...
mysql --defaults-file=<( printf '[client]\npassword=%s\n...
/bin/shだと多分エラーになるのでbashで。
- [[mysqldump に必要な権限は - Enjoi Blog>http://blog.enj...
GRANT SELECT, LOCK TABLES, SHOW VIEW ON `db_name` . * T...
- [[mysqldumpに必要な権限 - Qiita>https://qiita.com/makis...
GRANT SELECT, LOCK TABLES, SHOW VIEW, RELOAD, REPLICATIO...
** ログ [#lacc8029]
- 起動に失敗した場合、下記にエラーが出力される。
-- /usr/local/var/mysql/foo.local.err
- 通常のログ対象や出力先は、下記のファイルで設定する。
-- /usr/local/etc/my.cnf
** 監視 [#e25b0438]
- [[MySQLでALTER TABLE文の進捗状況を確認する - SH2の日記>...
ALTER TABLE文は内部的に作業用テーブルへのINSERT処理を実...
- [[mysqldumpリカバリの進捗を表示する #MySQL - Qiita>http...
pvコマンドはPipe Viewerの略で、その名の通りLinuxのパイプ...
* ユーザ権限 [#g22ce89b]
- [[ユーザ権限の確認・追加 - Qiita>http://qiita.com/pinoh...
権限付与
GRANT ALL PRIVILEGES ON `DB名`.テーブル TO 'ユーザ名'@'...
- [[権限の設定(GRANT文) - ユーザーの作成 - MySQLの使い方>...
例えばグローバルレベルでCREATE権限を設定するには次のよう...
grant create on *.* to 'user'@'localhost';
* 認証 [#aadb3d0b]
** MySQL/5.6 [#z52cff32]
- [[Suppress warning messages using mysql from within Ter...
mysql_config_editor set --login-path=local --host=localh...
mysql --login-path=local -e "statement"
- [[MySQL5.6で-pオプションをつけてコマンド&スクリプトを...
環境変数MYSQL_PWDを使います。
** [[MySQL/5.7]] [#wfd898e4]
- [[MySQL5.7以降でユーザ作成時にパスワードポリシーで怒ら...
5.7.8以降では validate_password プラグインがデフォルトで...
* 導入 [#v5a33664]
- [[MySQL 5.7 をインストールしたら最初に行うセットアップ ...
次に最低限のセキュリティ設定をしてくれる mysql_secure_in...
終了行:
#contents
&tag(MySQL);
* インデックス [#m327809e]
#taglist(tag=MySQL)
* [[コマンド]] [#b414e776]
- [[MySQL 逆引きリファレンス>http://mysql.javarou.com/]]
「MySQL 逆引きリファレンス」はオープンソースの RDBMS で...
** system [#o4c565c8]
- [[第77回 mysqlコマンドラインクライアント:MySQL道普請...
\! (systemコマンド)
systemコマンドはUnixのshellコマンドを実行します。
- [[よく使うMySQLコマンド集 - Qiita>https://qiita.com/Cyb...
pagerコマンドでクエリの結果を見やすくする ~pager less~
** 更新通知 [#xe151dcd]
- [[GitHub - Cyclonecode/mysql-notification: Example of a...
A simple example of using a user defined function (UDF) ...
-- 関連:[[PostgresSQL]]
-- コメント:[[MySQL/8.0]].22, [[BigSur]]にて通知の受信を...
- [[cybozu.com の MQ と性能問題 - Cybozu Inside Out | サ...
UDF は MySQL plugin の仕組みの1つで、SQL から利用可能な...
* [[ツール]] [#f498d7f4]
- [[MySQL :: Download MySQL Workbench>http://dev.mysql.co...
- [[Sequel Pro>http://www.sequelpro.com/]]
-- [[MacからMySQLをさわるならSequel Proをオススメする5つ...
** [[Ruby]] [#y3978e79]
- [[ruby-mysql · GitHub>https://github.com/tmtm/ruby-mysq...
MySQL connector for Ruby. pure Ruby version.
- [[YUKASHIKADO Inc. 開発ブログ • HomebrewなMySQLを使って...
gem install mysql2 -- --with-mysql-lib=/usr/local/Cellar...
--with-mysql-config=/usr/local/Cellar/mysql/5.6.10/bin/m...
- [[bundle install 時、mysql2でエラー - Qiita>https://qii...
解決策
$ bundle config --local build.mysql2 "--with-ldflags=-L/...
- [[bundlerでmysql2のインストールが失敗する - NullPointer...
$ brew install openssl
$ bundle config --local build.mysql2 "--with-ldflags=-L/...
** [[Homebrew]] [#qfc1f5ec]
- [[HomebrewでMySQLをインストールする時に知っておきたいこ...
** [[Java]] [#bbfe29f0]
- [[JavaでMySQLに接続してデータ操作をする - TASK NOTES>ht...
JavaからMySQLへ接続するにはJDBCドライバが必要です。 MySQ...
ダウンロードしたら解凍して、中のjarファイルを使用します。
- [[JavaでMySQLのデータベースにトランザクション処理 | De...
今回は複数のSQL文の登録とトランザクション処理を紹介しま...
発生した場合に、その全ての処理を無かった事にしてくれます。
- [[[Java]iciqlで簡単DBアクセス[ORマッパー] | Developers...
iciqlの特徴は以下のとおり。
・単一のjarで提供される
・設定ファイルなしで使える
・DBからモデル生成できるツール付き
* データ [#l99f3552]
** [[日時]]型 [#i4fe5743]
- [[いぞるで雑記annex mysqlのtimestamp型を使って更新日時...
CREATE TABLE `test` (
name varchar(10) ,
modified_date timestamp NULL default CURRENT_TIMESTAMP o...
create_date timestamp NOT NULL default '0000-00-00 00:00...
)
INSERT INTO test ( name , create_date ) VALUES ( 'foo' ,...
- [[[MySql] 登録日時の初期値と更新日時の自動更新 | So-Kai...
current_timestamp を設定できるのは1カラムだけ
- [[[ MySQL ] n分前, n時間前, n日後の日付を取得する ( INT...
7日後の日時を取得する
mysql> SELECT CURRENT_TIMESTAMP + INTERVAL 7 DAY;
** Upsert (Insert or Update) [#sa71a3d1]
- [[mysql - If exists then update else insert - Database ...
delimiter $$
create procedure select_or_insert()
begin
IF EXISTS (select * from users where username = 'someth...
update users set id= 'some' where username = 'somethi...
ELSE
insert into users (username) values ('something');
END IF;
end $$
delimiter ;
- [[MySQLでUPSERTする方法 - TIPS | Code Macchiato - より...
upsertとは?
tableにレコードがなければINSERT, 存在すればUPDATEという...
* [[運用管理]] [#rb803307]
** トラブル [#jcb1baa3]
- [[誰も教えてくれなかったMySQLの障害解析方法 - Qiita>htt...
それほどDBに詳しくないアプリエンジニアが何かトラブった時...
** mysql_upgrade [#m1f5f6de]
- [[yum で MySQL バージョンアップ後に実行するチェックコマ...
アップグレードした新しい MySQL のシステムとの互換性が保...
-- [[MySQL 8で、mysql_upgradeがdeprecatedになった - Qiita...
MySQL 8.0.16から、mysql_upgradeはdeprecatedとのこと
** 設定(メモリ) [#q21a3fbe]
- [[MySQL最低限のメモリ設定 - Qiita>http://qiita.com/zabu...
環境にもよりますが、MySQLのデフォルトのメモリ関連の設定...
- [[5分で出来るMySQLのお手軽チューニング - わーくあうと!...
今回はスレッド数が多すぎたので max_connections を 151ー...
- [[MySQLメモリ設定を変更して、前後の設定値を比較してみた...
MySQLメモリ設定を変更しました。設定項目は抜粋になります...
- [[MySQLのメモリ設定の勘所 – sawara.me>http://sawara.me/...
MySQLで使用する全体的なメモリ使用量を計算するには
グローバルバッファ + (スレッドバッファ × コネクション数...
という計算式に当てはめればいいことになります。
- [[MySQL 5.6のインストール後にチューニングすべき項目 | Y...
innodb_buffer_pool_size - デフォルトは128M。これは、メモ...
メモリを使うかを指定するものなので、設定すべき重要な値だ。
- [[innodb_buffer_pool_sizeのチューニング:どれくらい割り...
よく「サーバの全メモリの50%から70%くらい」とか「80%」...
- [[DSAS開発者の部屋:5分でできる、MySQLのメモリ関係のチュ...
innodb_buffer_pool_size
InnoDBのデータやインデックスをキャッシュするためのメモリ...
** [[バックアップ]] [#ua7a02ef]
- [[mysqldumpでMySQLのデータをバックアップ - シングスブロ...
- [[MySQLのバックアップ/復元(ダンプ/インポート/dump/impor...
mysqldump -u root -p -x --all-databases > dump.sql
- [[MySQLのコマンドラインで-pオプションを使わずにパスワー...
mysql --defaults-file=<( printf '[client]\npassword=%s\n...
/bin/shだと多分エラーになるのでbashで。
- [[mysqldump に必要な権限は - Enjoi Blog>http://blog.enj...
GRANT SELECT, LOCK TABLES, SHOW VIEW ON `db_name` . * T...
- [[mysqldumpに必要な権限 - Qiita>https://qiita.com/makis...
GRANT SELECT, LOCK TABLES, SHOW VIEW, RELOAD, REPLICATIO...
** ログ [#lacc8029]
- 起動に失敗した場合、下記にエラーが出力される。
-- /usr/local/var/mysql/foo.local.err
- 通常のログ対象や出力先は、下記のファイルで設定する。
-- /usr/local/etc/my.cnf
** 監視 [#e25b0438]
- [[MySQLでALTER TABLE文の進捗状況を確認する - SH2の日記>...
ALTER TABLE文は内部的に作業用テーブルへのINSERT処理を実...
- [[mysqldumpリカバリの進捗を表示する #MySQL - Qiita>http...
pvコマンドはPipe Viewerの略で、その名の通りLinuxのパイプ...
* ユーザ権限 [#g22ce89b]
- [[ユーザ権限の確認・追加 - Qiita>http://qiita.com/pinoh...
権限付与
GRANT ALL PRIVILEGES ON `DB名`.テーブル TO 'ユーザ名'@'...
- [[権限の設定(GRANT文) - ユーザーの作成 - MySQLの使い方>...
例えばグローバルレベルでCREATE権限を設定するには次のよう...
grant create on *.* to 'user'@'localhost';
* 認証 [#aadb3d0b]
** MySQL/5.6 [#z52cff32]
- [[Suppress warning messages using mysql from within Ter...
mysql_config_editor set --login-path=local --host=localh...
mysql --login-path=local -e "statement"
- [[MySQL5.6で-pオプションをつけてコマンド&スクリプトを...
環境変数MYSQL_PWDを使います。
** [[MySQL/5.7]] [#wfd898e4]
- [[MySQL5.7以降でユーザ作成時にパスワードポリシーで怒ら...
5.7.8以降では validate_password プラグインがデフォルトで...
* 導入 [#v5a33664]
- [[MySQL 5.7 をインストールしたら最初に行うセットアップ ...
次に最低限のセキュリティ設定をしてくれる mysql_secure_in...
ページ名: