- 投稿日:2019-03-23T21:03:05+09:00
 
CeotOSでMySQLを設定したのでメモ
CeotOSでMySQLを設定したのでメモ
環境: ConohaVPS / CentOS7.5
$ cat /etc/redhat-release CentOS Linux release 7.5.1804 (Core)MariaDBの削除
・CentOSの7系では標準でMariaDBがインストールされているので
・競合するので削除# mariadbの削除 $ sudo yum remove mariadb-libs $ sudo rm -rf /var/lib/mysqlyumにMySQLのリポジトリを登録
$ sudo rpm -ivh http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpmインストール
# インストール $ sudo yum install mysql-community-server mysql-devel # 確認。バージョン出ればOK $ mysqld --version mysqld Ver 5.7.25 for Linux on x86_64 (MySQL Community Server (GPL))起動と自動起動の設定
# 起動 $ sudo systemctl start mysqld.service # 自動起動設定 $ sudo systemctl enable mysqld.service
- 投稿日:2019-03-23T17:34:00+09:00
 
MySQLの操作方法
- 投稿日:2019-03-23T17:06:24+09:00
 
[Mysql][Error][Mac] テーブル一覧をShowできるが、Selectできない場合
理由はわからないが、(電源切れによる突然の再起動か)
特定のDatabase ファイルが壊れたようだ。mysql> SHOW TABLES; +-----------------------+ | Tables_in_database | +-----------------------+ | TABLE_ONE | | TABLE_TWO | | TABLE_THREE | +-----------------------+ mysql> SELECT * FROM TABLE_ONE; ERROR 1146 (42S02): Table 'database.TABLE_ONE' doesn't existmysqlcheck --all-databases --auto-repair
で原因を探ってみるとmysqlcheck -u root -p --all-databases --auto-repair mysql.user OK 中略.. TABLE_ONE.table Error : Table 'teble_one.table' doesn't exist status : Operation failedどうやら特定のデータベースのみ、壊れているようだ。
そこで、
今回はテスト環境で、データもたいしてなかったので
drop database して再度 Create しなおした。
- 投稿日:2019-03-23T16:35:39+09:00
 
【SQL】データベースのサイズを確認
MysqlでGB単位、Mb単位の両方を表示するSQL文
select table_schema as db_name, sum(data_length+index_length) /1024 /1024/1024 as GB,sum(data_length+index_length) /1024 /1024 as MB from information_schema.tables group by table_schema;実行結果例
db_name GB MB information_schema 0.000009536743 0.00976563 mysql 0.000991821289 1.01562500 
- 投稿日:2019-03-23T12:25:08+09:00
 
[Vagrant] Sequel Pro から MySQL に接続する3つの方法
VagrantのMySQLに接続する方法は,実は3種類あります.
環境
今回は,Homesteadを使います.設定はデフォルトのままです.
準備 : ポートフォワードの設定を確認する
接続情報として入力する必要があるので確認しておきましょう.今回必要になるは,3306 の行です.
$ vagrant port 22 (guest) => 2222 (host) 27017 (guest) => 27017 (host) 3306 (guest) => 33060 (host) 4040 (guest) => 4040 (host) 443 (guest) => 44300 (host) 5432 (guest) => 54320 (host) 80 (guest) => 8000 (host) 8025 (guest) => 8025 (host)方法1 : private_networkを使って接続する
ホストにはprivate_network,ポートにはVagrant上のMySQLのポート番号 (guestの方) を入力します.
ユーザ名,パスワード,データベースには,適当な値を入力してください.
方法2 : forwareded_portを使って接続する
ホストには127.0.0.1,ポートにはポートフォワードで設定したポート (hostの方) を入力します.
方法3 : SSHを使って接続する
VagrantにSSHで接続するには,
$ ssh vagrant@192.168.10.10のようにしますよね (
vagrant sshもありますが).それと同じように,Sequel ProにもSSH情報を入力します.パスワードとポートは空で大丈夫です.
注意しないといけないのは次です.MySQLの情報には,SSHでVagrantに接続したあとの情報を入力します.よって,MySQLホストは 127.0.0.1,ポート番号は 3306 (guestの方) になります.
ポートフォワードとは
ポートフォワードは,ホストPCのあるポートをVMのあるポートにマッピングする機能です.
たとえば,ホストPCの
8000をVagrantの80にマッピングすると,ホストPCのlocalhost:8000宛のリクエストがVagrantのlocalhost:80に転送されます.private_networkとは
VirtualBoxのホストオンリーアダプタという仮想ネットワークアダプタを利用した機能です.
Homesteadでは,
Homestead.yamlのipに設定したIPアドレスを指定すると,そのIPアドレスでVagrantにアクセスできるようになります.これを使うことにより,ポートフォワードを使わずに直接Vagrantにアクセスできるというわけです.
参考
- 投稿日:2019-03-23T01:04:18+09:00
 
CentOSにmysql 5.7をインストールする
インストール。
$ sudo yum localinstall http://dev.mysql.com/get/mysql57-community-release-el6-8.noarch.rpm $ sudo yum install mysql mysql-devel mysql-server mysql-utilitiesmysqlを起動。
$ sudo service mysqld start初回パスワードを確認。
$ grep 'temporary password' /var/log/mysqld.log
2019-03-22T15:55:51.996547Z 1 [Note] A temporary password is generated for root@localhost: O=XXXXXXXXX
初回パスワードは
XXXXXXXXXだとわかる。初期設定を行う。
$ mysql_secure_installation指示に従いパスワードと初期設定を行って終了。
念の為mysqlにrootでログインできるか確認。$ mysql -uroot -p先程設定したパスワードできたらOK。


