Tuesday, July 23, 2013

MySQLのサンプルデータベース

Original post http://anothermysqldba.blogspot.com/2013/07/mysql-sample-databases.html

私は上の記事を見たforums.mysql.comサンプルデータベースに関するサイトを、私はそれが他の人のためにそれらに簡単な概要を与えるポスト価値があるかもしれないと思った。

サンプルデータベースは、ここで見つけることができます: http://dev.mysql.com/doc/index-other.html
あなたは、MySQLのコマンドラインを介してこれらのデータベースをロードすることができます。

$ tar -vxf sakila-db.tar.gz
$cd sakila-db
$ mysql -u root -p < sakila-schema.sql
Enter password:
$ mysql -u root -p < sakila-data.sql
Enter password:

$ gzip -d world_innodb.sql.gz
$ mysql -u root -p -e "DROP SCHEMA IF EXISTS world";
Enter password:
$ mysql -u root -p -e "CREATE SCHEMA world";
Enter password:
$ mysql -u root -p world < world_innodb.sql
Enter password:

あなたのアイデアを得る。 SakilaというサンプルデータベースがドロップSCHEMAを持っており、そのスキーマにその手順を実行する必要はありませんので、ファイルでSCHEMAコマンドを作成。

また、このデータをロードするためのMySQL Workbenchを使用することができます。
  • あなたのデータベースへの接続ハンドルを作成します。
  • サーバー管理インスタンスをセットアップするには、この新たに作成された接続ハンドルを使用してください。
  • あなたの新しいインスタンスをダブルクリックします。
  • データのエクスポート/復元]の下には、データのインポートが表示されるはずです。
  • 自己完結型ファイルからインポート
    • ファイルパスはSakilaという-data.sqlにために繰り返してからSakilaという-schema.sqlの場所になります
    • スキーマを選択するか、世界の場合は、新しいものを作成することができます。
    • インポートを開始し選択してから、インポートの進行状況表示になります。
今、あなたのデータベースのサンプルデータベースへのアクセスを持っている。

$ mysql -u root -p
>使用Sakilaという
>テーブルを示す;
>俳優リミット3から*を選択します。
+ ---------- + ------------ + ----------- + ------------- -------- +
| ACTOR_ID | FIRST_NAME | last_nameの| LAST_UPDATE |
+ ---------- + ------------ + ----------- + ------------- -------- +
| 1 | PENELOPE |ギネス| 2006-02-15四時三十四分33秒|
| 2 | NICK | WAHLBERG | 2006-02-15 4時34分33秒|
| 3 | ED | CHASE | 2006-02-15 4時34分33秒|
+ ---------- + ------------ + ----------- + ------------- -------- +
ベンチ経由:
  • Adminタブを閉じます
  • SQL開発の下に接続ハンドルを選択してください
  • どちらかだけの俳優の上限3 SELECT * FROMを入力することができ、そして照明ボルトを打つ。
  • または、コマンドの一部を入力し、二重、それはあなたの名前を取り込む持っているテーブル名やカラム名をクリックすることができます。 その後、照明ボルトを選択します。
今、あなたは一緒に遊んで、学習を開始するデータを持っている。

あなたはこれにテーブルを追加したい場合は、MySQLのコマンドラインを使用するか、またはSQL開発、右がお好みのスキーマの下の "テーブル"をクリックし、 "新しいテーブルを作成"

Wednesday, July 17, 2013

MySQLにおける自分のステータス変数にチェックイン。

Original post: http://anothermysqldba.blogspot.com/2013/07/check-in-on-your-status-variables-in.html

だから、あなたにも予想通りあなたのデータベースを実行している。
しかし、それは何ですか? それは、より良い動作していませんか?

あなたのステータス変数の一部でチェック最後の時間はいつでしょうか?

監視するためのいくつかの重要なステータス変数は以下のとおりです。

  • Sort_merge_passes
    • 私は、クライアントシステムを監視。 これは私がの値の広大な範囲を参照することを一つの変数である。
    • このステータスの高い値が表示された場合は、真剣にsort_buffer_sizeの調整を検討してconiderはず。 ピーターのブログ記事では、あなたの選択肢を評価するのに役立つスタートすることができます。
    • http://dev.mysql.com/doc/refman/5.0/en/server-system-variables.html#sysvar_sort_buffer_size
  • sort_buffer_size
  • Select_scan
    • "最初のテーブルのフルスキャンをした結合の数"
    • あなたは本当に、完全なスキャンをしたいですか?
  • Handler_read_first
    • この値が大きい場合、それはサーバが完全なインデックススキャンの多くを行っていることを示唆している。"
    • 再びあなたは、完全なスキャンをしたいですか?
  • Key_reads
  • Select_full_join
    • この値が0でない場合は、慎重にあなたのテーブルのインデックスをチェックする必要があります。"
だから、簡単に言えば.... 自分のステータスをチェック!

Tuesday, July 16, 2013

MySQLの分布調査

私は、この一般的なMySQLの分布調査を作成しました。結果は、調査の終了時に利用できるようになります。すべての質問が必要な(唯一の4問)私はこのブログがログインに提示されていることを言語にそれぞれ調査をターゲットにしようとしています

結果は、しかし、ここでパブリックビューイングのためのMySQLディストリビューションのいずれかに行くされていません。

調査をここにご利用ください

http://www.surveymonkey.com/s/KMH9FZD

Saturday, July 13, 2013

のMySQLから直接CSVをエクスポート

Original post: http://anothermysqldba.blogspot.com/2013/07/export-csv-directly-from-mysql.html

最初にこのことについて別のブログ記事はここにある:
しかし、以来、私は、これはに掲載見forums.mysql.com私はもう少し例を与えるだろうと思った。

したがって、この例のために私は世界のデータベースを使用しています。 ここからダウンロードして自由に利用可能です:

mysql>desc City;
+-------------+----------+------+-----+---------+----------------+
| Field | Type | Null | Key | Default | Extra |
+-------------+----------+------+-----+---------+----------------+
| ID | int(11) | NO | PRI | NULL | auto_increment |
| Name | char(35) | NO | | | |
| CountryCode | char(3) | NO | MUL | | |
| District | char(20) | NO | | | |
| Population | int(11) | NO | | 0 | |
+-------------+----------+------+-----+---------+----------------+




mysql> SELECT ID, Name, CountryCode , District , Population
INTO OUTFILE '/tmp/City_data.csv'
FIELDS TERMINATED BY ',' OPTIONALLY ENCLOSED BY '"'
ESCAPED BY '\\'
LINES TERMINATED BY '\n'
FROM City ;
Query OK, 4079 rows affected (0.04 sec)




# more /tmp/City_data.csv
1,"Kabul","AFG","Kabol",1780000
2,"Qandahar","AFG","Qandahar",237500
3,"Herat","AFG","Herat",186800
4,"Mazar-e-Sharif","AFG","Balkh",127800
5,"Amsterdam","NLD","Noord-Holland",731200
6,"Rotterdam","NLD","Zuid-Holland",593321
7,"Haag","NLD","Zuid-Holland",440900
8,"Utrecht","NLD","Utrecht",234323
9,"Eindhoven","NLD","Noord-Brabant",201843

Thursday, July 4, 2013

LIKE REGEXPのSUBSTRINGでオプションを更新し、LOCATE

Original post: http://anothermysqldba.blogspot.com/2013/07/update-options-with-like-regexp.html

最近のフォーラム投稿は私が停止し、一瞬考えさせられました..
http://forums.mysql.com/read.php?10、589573,589573#MSG-589573

問題は、ユーザーが言葉だけアウディとしない単語監査を更新したかったのでした。
これは、簡単にかつて私はSUBSTRINGを使用して見つけよう停止期間を利用して解決した。彼らはすべての後に迅速かつ容易に修正を求めていました。


root@localhost [test]> CREATE TABLE `forumpost` (
-> `name` varchar(255) DEFAULT NULL
-> ) ENGINE=InnoDB;

root@localhost [test]> insert into forumpost value ('An auditor drives an audi.'),('An auditor drives a volvo.');

root@localhost [test]> select * from forumpost;
+----------------------------+
| name |
+----------------------------+
| An auditor drives an audi. |
| An auditor drives a volvo. |
+----------------------------+ 


だから今、私たちはそれの期間を利用して、迅速かつ簡単な方法を更新してみましょう

root@localhost [test]>UPDATE forumpost SET name = REPLACE(name, 'audi.', 'toyota.') WHERE name LIKE '%audi.';
Query OK, 1 row affected (0.20 sec)
Rows matched: 1 Changed: 1 Warnings: 0

root@localhost [test]> select * from forumpost;
+------------------------------+
| name |
+------------------------------+
| An auditor drives an toyota. |
| An auditor drives a volvo. |
+------------------------------+ 


しかし... SUBSTRINGの有効なオプションについて何とLOCATE .....


root@localhost [test]> insert into forumpost value ('An auditor drives an audi.');
root@localhost [test]> insert into forumpost value ('An auditor drives an audi car');
root@localhost [test]> select * from forumpost;
+-------------------------------+
| name |
+-------------------------------+
| An auditor drives an toyota. |
| An auditor drives a volvo. |
| An auditor drives an audi. |
| An auditor drives an audi car |
+-------------------------------+ 


あなたは、あなたが後にあるものを見つけることができますことを確認しますので、最初にあなたのオプションをテスト..


root@localhost [test]> SELECT * FROM forumpost WHERE name REGEXP 'audi car$';
+-------------------------------+
| name |
+-------------------------------+
| An auditor drives an audi car |
+-------------------------------+ 

root@localhost [test]> SELECT * FROM forumpost WHERE name LIKE '%audi car%';
+-------------------------------+
| name |
+-------------------------------+
| An auditor drives an audi car |
+-------------------------------+


我々は単に単語の車のため期間を変更したので、それは本当にあまりにもしませんでした。だから続ける....

私たちは、アウディ車でラインからわずかワードアウディをプルする必要があります。

root@localhost [test]> SELECT SUBSTRING(name,-8,4), name FROM forumpost WHERE SUBSTRING(name,-8,4) = 'audi';
+----------------------+-------------------------------+
| SUBSTRING(name,-8,4) | name |
+----------------------+-------------------------------+
| audi | An auditor drives an audi car |
+----------------------+-------------------------------+ 


SUBSTRINGは、私はバックエンドから8文字を数えた後、私は最初の4文字を引くことができました。

ですから、文字の場所がわからない場合はどうでしょうか。
あなたと一緒に起動するには、あなたが後にあるのか知っていることを確認するためにあなたのデータを確認する必要があります。 しかし、文字がとてもLOCATEとの仕事をすることができますあなたの文字列の周りに移動することがあります。

私はテストのために別の行を追加します。

root@localhost [test]> insert into forumpost value ('An auditor drives an red audi car');
Query OK, 1 row affected (0.04 sec)

root@localhost [test]> select * from forumpost;
+------------------------------------+
| name |
+------------------------------------+
| An auditor drives an toyota. |
| An auditor drives a volvo. |
| An auditor drives an audi. |
| An auditor drives an audi car |
| An auditor drives an audi blue car |
| An auditor drives an red audi car |
+------------------------------------+ 


だから関係なく、我々は単にその単語をスキップする必要があるように、我々は、監査後に常にそのアウディを見ることができるエンディングの。 ワード監査人は最初の8文字になっているので、それらをスキップします。

root@localhost [test]> SELECT LOCATE('audi', name,8), name FROM forumpost WHERE LOCATE('audi', name,8) > 0 ;
+------------------------+------------------------------------+
| LOCATE('audi', name,8) | name |
+------------------------+------------------------------------+
| 22 | An auditor drives an audi. |
| 22 | An auditor drives an audi car |
| 22 | An auditor drives an audi blue car |
| 26 | An auditor drives an red audi car |
+------------------------+------------------------------------+ 


[OK]をので、我々は後にあるものを見つけました。 今、私たちは、更新ステートメントを記述する必要があります。

我々はこの時間を置き換えることはできません。

UPDATE forumpost SET name = REPLACE(name, LOCATE('audi', name,8), 'mercedes') WHERE LOCATE('audi', name,8) > 0 ;
Query OK, 0 rows affected (0.02 sec)
Rows matched: 4 Changed: 0 Warnings: 0 

それは行を見つけたが、何も変更しなかったことに注意してください。

だから、もう一度試してみて、私は場所8を想定する必要はありません。 私はアウディの2番目の値を求めています。
だからテストはSUBSTRING_INDEXと、私は1日1をスキップして、CONCATを使用できることを示しています

SELECT name , CONCAT ( SUBSTRING_INDEX(name, 'audi', 2) , ' mercedes ' , SUBSTRING_INDEX(name, 'audi', -1) ) as newvalue
FROM forumpost
WHERE LOCATE('audi', name,10) > 0 ;
+-----------------------------------+-----------------------------------------+
| name | newvalue |
+-----------------------------------+-----------------------------------------+
| An auditor drives an audi. | An auditor drives an mercedes . |
| An auditor drives an audi. | An auditor drives an mercedes . |
| An auditor drives an audi car | An auditor drives an mercedes car |
| An auditor drives an red audi car | An auditor drives an red mercedes car |
+-----------------------------------+-----------------------------------------+

root@localhost [test]> UPDATE forumpost SET name = CONCAT(SUBSTRING_INDEX(name, 'audi', 2) , ' mercedes ' , SUBSTRING_INDEX(name, 'audi', -1) )
WHERE LOCATE('audi', name,10) > 0 ;
Query OK, 4 rows affected (0.03 sec)
Rows matched: 4 Changed: 4 Warnings: 0

root@localhost [test]> select * from forumpost;
+-----------------------------------------+
| name |
+-----------------------------------------+
| An auditor drives an mercedes . |
| An auditor drives a volvo. |
| An auditor drives an mercedes . |
| An auditor drives an mercedes car |
| An auditor drives an red mercedes car |
+-----------------------------------------+
5 rows in set (0.00 sec) 


さて、無効であるが、それは別の話です ""の使用と文法を付与した。

これらの詳細については、ここで見つけることができます:

Wednesday, July 3, 2013

あなたのMySQLサーバを理解する

Original post: http://anothermysqldba.blogspot.com/2013/07/understand-your-mysql-server.html

私はそれは誰もが自分のMySQLサーバのさまざまな側面を理解するのに役立ついくつかのガイドラインを書き出しておくと便利かもしれない考え出した。

このデータは、時間をかけて収集されたと私はリファレンスポストに最善を尽くします。 全体の情報のあなたの最高のソースがここにリストされるように考慮してください。
したがって、この例のために、私たちはあなただけのMySQLサーバーの責任を取ったと仮定しましょう​​。 情報を知る有効なニーズを収集するための最良の方法は何ですか...

あなたは、データベースへのパスワードを知っていますか? それはmysql_config_editor(そう前5.6)を使用していない場合は、調べるために少し掘りを行うことができます。 そうしないとあなたはそれを再起動し、我々はあなたがそれを再起動したくないと仮定するインチあなたの方法を強制する必要があります。 :スキップ助成表は例をいくつかの以前のブログの記事を見直す-あなたが使用する方法を見つけ出す必要がある場合http://anothermysqldba.blogspot.com/search/label/--skip-grant-tables

だから、最初のいくつかのパスワードを探すために配置されます。 また、これはあなたが行う場合は、これらの人の一人は、後でパスワードを見つけることができることを意味します。
  • 誰かがコマンドラインでパスワードを使用したかどうかを調べる。
    • 歴史|はgrep mysqlの
  • crontabの-L
    • あなたが表示されている場合は、バックアップスクリプトやなどがパスワードの入力をそれらのスクリプトに見える
  • 見つけます。my.cnfを
  • 。猫bash_history | grepのmysqlの
  • パスワードなしでMySQLを試すが、もちろん希望はあなたの箱が安全です。
  • MySQLの5.6チェックですでに設定されたアカウントを持っている場合
    • mysql_config_editorプリント - すべて
[OK]をので、アカウント情報を持っていては、ボックス上にあります。
MySQLサーバに飛び込む前に、まずあなたのサーバーについて少し知っている。
この情報の一部は、あなただけ知っているかもしれませんが、安全のために。
OS、ディストリビューション、メモリ、ディスク情報を取得するには例えば、Linuxシステム上で次のコマンドを実行します。
  • 猫の/ etc / *-リリース
  • uname-aの
  • DF-ああ
  • マウント
  • 無料の-M
  • トップ
  • swappinessの情報のためにこの記事に目を通すhttp://www.mysqlplus.net/tag/swappiness/
  • あなたは、特定のCNFファイルが使用されていますか?
    • します。ps-ef | grep mysqlの| grepのCNF
    • DATADIR:
      • します。ps-ef | grep mysqlの| grepのDATADIR

だから今のMySQLサーバにジャンプしていくつかのデータを収集するために開始します。 my.cnfファイルのレビューはあなたにこの情報のほとんどを与えることができているときは、サーバーからそれを収集することができます。

show variables like '%log%';


任意の問題を検討するため、エラー(ERR)がファイルに目を通す。 これは、起動および等でエラーが発生した後に見える最初の場所であるべき

それでは、どのサーバが実行されている? すぐに次の情報を収集するには、statusコマンドを実行します。
  • バージョン
  • スレッド
  • 質問
  • スロークエリ
  • 開き
  • FLUSH TABLES
  • オープンテーブル
  • 秒あたりの平均クエリ

mysql> status


"mysqladminは拡張ステータス"コマンドはまた、あなたと、サーバ内部のグレップを使用するための情報を与えることができることも有効です。

以下の情報に目が離せない。
これのいくつかはまた、ここに掲載されてhttp://www.techrepublic.com/blog/opensource/10-mysql-variables-that-you-should-monitor/56

あなたは、これらの値のいくつかを説明素敵なテーブルを見て言及し、ポストを確認することができます。 これらは、私はあなたががに目を維持すべきだと思うものです。

> show status like 'Handler_read_first';
> show status like 'Key_reads';
> show status like 'Select_full_join';


クエリの全体的な割合が遅い実行しているを見つける。 うまくいけば、これは少数です。
簡単なチェックのために、これらの変数を設定するためにステータス情報を使用します。

set @slow_queries=<value in the status output>;
set @questions=<value in the status output>;
SELECT ROUND(100* (@slow_queries / @questions),2) "Slow Query percentage" \G


からの出力を理解するために学んでます。SHOW ENGINE INNODBのSTATUS \ G
あなたがそれらをデバッグするために始めることができるので、デッドロック情報に目が離せない。

お使いのシステムは、トリガー、イベント、ストアドプロシージャを持っていますか?

mysql> SELECT db, name FROM mysql.proc;
mysql> SELECT TRIGGER_SCHEMA , TRIGGER_NAME FROM information_schema.TRIGGERS ;
mysql> SELECT EVENT_NAME FROM information_schema.EVENTS ;


あなたのサーバー変数を知る

show variables like '%innodb%';
show variables like '%thread%';
show variables like '%table%';
show variables like '%buffer%';
show variables like '%cache%';


ユーザーアカウントを確認してください。
彼らはすべての有効なパスワードを持っていますか。

SELECT Host, User ,
CASE
WHEN CHARACTER_LENGTH(Password) = 16 THEN 'Pre-4.1 I should update this'
WHEN CHARACTER_LENGTH(Password) > 16 THEN 'Valid password'
WHEN CHARACTER_LENGTH(Password) =0 THEN ' BLANK PASSWORD so I just do not care if people steal my stuff'
END as Password
FROM mysql.user;


あなたのInnoDBログファイルを理解し、良好なバッファー·プール·サイズを把握。
男爵は、ここでこれについて投稿: http://www.mysqlperformanceblog.com/2008/11/21/how-to-calculate-a-good-innodb-log-file-size/
これについての詳細を理解するために彼のポストをお読みください。 以下同様にこの情報を使用する方法の例である。 私は助けるための例のための彼の番号を使用していました。 男爵が言ったように、トラフィックが有効な情報を得ることが重い場合、これを実行します。

mysql>pager grep sequence; show engine innodb status\G select sleep(60); show engine innodb status\G pager;
mysql>SET @sequence1= 3836410803;
mysql>SET @sequence2= 3838334638;
mysql>select ( ( (@sequence2 - @sequence1) / 1024 / 1024 )* 60 ) /2 as innodb_log_file_size_used ;
mysql>select (@@innodb_log_file_size / 1024) / 1024 as current_log_file_MB_size;


バッファー·プール·サイズ。
次のクエリは、ネットを中心掲示され、バッファ·プールの有効な出発点を与えませんが、私もそれが持っていたサーバーに基づいていくつかの無効または非現実的な数字を見てきました。 個人的には、以下のクエリの結果を確認します。 ピーク時のトラフィックあなたは男爵のポストにつきログに送信している量データの結果を確認します。 次に、サーバ上に持っているどのくらいのメモリを考慮に入れる。 より多くのデータベースが速く、それは結果を得ることであるメモリで実行されていますが、他に何がやってデータベースで考慮する必要があります。 だからあなたは、バッファー·プール·サイズの適切な値を得るためにあなた自身の判断と研究を使用する必要があります。 別のオプションは、使用する可能性がtools.percona.comを 、質問に答え、それはあなたを伝えますかを参照してください。


mysql>select ( ( (@sequence2 - @sequence1) / 1024 / 1024 )* 60 ) *2 as innodb_buffer_pool_GB_test ;

mysql>SELECT CONCAT(ROUND(KBS/POWER(1024,
IF(PowerOf1024<0,0,IF(PowerOf1024>3,0,PowerOf1024)))+0.49999),
SUBSTR(' KMG',IF(PowerOf1024<0,0,
IF(PowerOf1024>3,0,PowerOf1024))+1,1)) recommended_innodb_buffer_pool_size
FROM (SELECT SUM(data_length+index_length) KBS FROM information_schema.tables
WHERE engine='InnoDB') A,
(SELECT 3 PowerOf1024) B \G



次に、あなたのインデックスとなどより掘り下げるために、このオープンな箱舟のブ​​ログ記事を確認してください。 そのポストとサイト全体に大きな情報。
http://code.openark.org/blog/mysql/useful-database-analysis-queries-with-information_schema


サーバーの詳細データに掘る....


最古のテーブルは何です、多分それらをアーカイブする必要がありますか?

SELECT CONCAT(`TABLE_SCHEMA`, "." , `TABLE_NAME`) as name , `UPDATE_TIME`
FROM information_schema.TABLES
WHERE TABLE_SCHEMA NOT IN ('information_schema','mysql','test','performance_schema') AND `UPDATE_TIME` IS NOT NULL ORDER BY `UPDATE_TIME` LIMIT 25;



何がほとんどのスペースを取っている?

SELECT concat(table_schema,'.',table_name) table_name,
concat(round(data_length/(1024*1024),2),'M') data_length
FROM information_schema.TABLES
ORDER BY data_length DESC LIMIT 5;


これは、ちょうどあなたがあなたのサーバーに何が起こっているか理解するための出発点です。 詳細を学ぶためにこのサイトに記載されているサイトを使用してください。

Monday, July 1, 2013

SolarisのPKGを使用したSolaris上でのMySQL 5.6

Original post: http://anothermysqldba.blogspot.com/2013/06/mysql-56-on-solaris-using-solaris-pkg.html

MySQL.comサイトは、SolarisにMySQLをインストールする方法のドキュメントとの良好な仕事をしていません。 ハイパーリンクは、以下の記載されています。

私が参照し、それが同様に行わ方法の例として、この記事を作成してください。
(私は、bashシェルを好むが、それは私だけです...)

bash-3.2# groupadd mysql
bash-3.2# useradd -g mysql mysql
bash-3.2# pkgadd -d mysql-5.6.12-solaris*.pkg

The following packages are available:
1 mysql MySQL Community Server (GPL)
5.6.12

Select package(s) you wish to process (or 'all' to process
all packages). (default: all) [?,??,q]: all


今、あなたは、少し休憩を取ることができます。 Solarisは、プロセスotを少し取り、ここにインストールしてください。


Processing package instance <mysql> from </export/home/mysql-5.6.12-solaris10*.pkg>

MySQL Community Server (GPL) 5.6.12
Copyright (c) 2000, , Oracle and/or its affiliates. All rights reserved.
Use is subject to license terms.
Using </opt/mysql> as the package base directory.
## Processing package information.
## Processing system information.
1 package pathname is already properly installed.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.

This package contains scripts which will be executed with super-user
permission during the process of installing this package.

The selected base directory </opt/mysql> must exist before
installation is attempted.

Do you want this directory created now [y,n,?,q] y
Using </opt/mysql> as the package base directory.
## Processing package information.
## Processing system information.
## Verifying disk space requirements.
## Checking for conflicts with packages already installed.
## Checking for setuid/setgid programs.

This package contains scripts which will be executed with super-user
permission during the process of installing this package.

Do you want to continue with the installation of <mysql> [y,n,?] y


Installing MySQL Community Server (GPL) as <mysql>
.....


再び、それはいくつかの作業をさせて...


......2013-06-30 17:40:12 1117 [Note] InnoDB: Starting shutdown...
2013-06-30 17:40:12 1117 [Note] InnoDB: Shutdown completed; log sequence number 1625987

A RANDOM PASSWORD HAS BEEN SET FOR THE MySQL root USER !
You will find that password in '/.mysql_secret'.

You must change that password on your first connect,
no other statement but 'SET PASSWORD' will be accepted.
See the manual for the semantics of the 'password expired' flag.

Also, the account for the anonymous user has been removed.

In addition, you can run:

/opt/mysql/mysql/bin/mysql_secure_installation

which will also give you the option of removing the test database.
This is strongly recommended for production servers.

See the manual for more instructions.

Please report any problems with the /opt/mysql/mysql/bin/mysqlbug script!

The latest information about MySQL is available on the web at

http://www.mysql.com

Support MySQL by buying support/licenses at http://shop.mysql.com

New default config file was created as /opt/mysql/mysql/my.cnf and
will be used by default by the server when you start it.
You may edit this file to change server settings


Installation of <mysql> was successful.


だから今dev.mysql.comあたりinstructinsに続く

bash-3.2# ln /etc/init.d/mysql /etc/rc3.d/S91mysql
bash-3.2# ln /etc/init.d/mysql /etc/rc0.d/K02mysql


私はデータベースを使用したい場合はだから今、私は動的に1回作成されたrootパスワードを乗り越える必要があります。 私は個人的にこの機能が好きです。


# /etc/init.d/mysql start
Starting MySQL
........ SUCCESS!
bash-3.2# ls -al /.mysql_secret
-rw------- 1 root other 96 Jun 30 17:40 /.mysql_secret
# more /.mysql_secret
# The random password set for the root user at Sun Jun 30 17:40:07 2013 (local time): c29IHIZ4


それでは、私たちが始める準備が整いました私たちは、ログインしてパスワードを変更してみましょう。 率直に言って、あなたは、他の選択肢がない。


bash-3.2# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.6.12

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.


mysql> show grants for 'root'@'localhost';
ERROR 1820 (HY000): You must SET PASSWORD before executing this statement

mysql> SET PASSWORD FOR 'root'@'localhost' = PASSWORD('somepassword');
Query OK, 0 rows affected (0.04 sec)


そして、それはそれです。 我々は今、行ってもいいし、準備ができている...


mysql> exit
Bye
bash-3.2# rm -f /.mysql_secret
bash-3.2# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.6.12 MySQL Community Server (GPL)

Copyright (c) 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> SELECT VERSION();
+-----------+
| VERSION() |
+-----------+
| 5.6.12 |
+-----------+
1 row in set (0.00 sec)


リファレンス| |有用なリンク: