AWS自動売買システム EC2編

自宅にあるMac等で24時間稼働を目指してもいいのですが、流行りのクラウドでのシステム稼働を目指してみる。

 

EC2にかかる料金は、インターネットからのイン(つまりEC2へのダウンロード)には料金が掛からず、インターネットへのアウトに従量課金される仕組みになっている。

 

  • python3系のインストール
  • mysqlのインストール

主に、この二点をしなければならないのですが、後者のmysqlインストール苦戦。。。

(ちなみに、EC2はredhat)

 

結果的に、

MySQLのインストール - [Linux [Red Hatなど]/サーバー] ぺんたん info

にあるパッケージをインストールしていったことと、

MySQLのインストール - [Linux [Red Hatなど]/サーバー] ぺんたん info

にあるEC2でのパスワード設定が必要だった。(ec2-userのパスワード変更)

また、ハマっているときに調べてたくさんでてきた

/var/log/mysql/mysql.sock

みたいなやつをtouchしていて、これを消したらうまく行った。

# /etc/init.d/mysqld restart

 

TA-LIbのインストールに苦労したときに役に立ったサイト

pyalgotrade.blogspot.jp

 

おまけ

MySQLの初期設定

/var/log/mysqld.log

にインストール時にパスワード発行されているので、それをコピー

#mysql -u root -p

でそのパワードを入力する。

  mysql set password for root@localhost=password('root');

でパスワードを変更(大文字小文字数字特殊文字がないと怒られる)

その後、

  mysql> create user 'kuma'@'localhost' identified by 'bear';

とかでユーザーを作っておく。

[権限について]

SHOW GRANTS FOR hoge@localhost;

で権限の確認ができる。これが適切に設定できていないと、データの操作やテーブルの作成などができない。

create database moge;

でデータベースを作成し、そのデータベースに対して権限をつける。

GRANT CREATE ON *.* TO 'kodai'@'localhost'

GRANT SELECT, INSERT, UPDATE, DELETE, DROP ON `moge`.* TO 'hoge'@'localhost';

としておけば、十分なはず。

 

おまけのおまけ

CREATE TABLE db_name.tbl_name(col_name1 data_type1, col_name2 data_type2, ...);

でテーブルの作成(use db;しておくといいかも)