のアーカイブ

python3系でSQL文を実行する

2017年10月17日

やり方はいろいろあるがPyMySQLが結構楽。 ``` pip3 intall PyMySQL ``` ``` import pymysql.cursor connection = pymysql.connect(db='データベース名', charset='utf8') ・・・ with connection.cursor() as cursor:     sql = "INSERT INTO テーブル名 (カラム名, カラム名) VALUE
続きを読む

djangoで作成したデータベースのデータを一括削除

2017年10月17日

カラムの追加や更新、削除、テストで元のデータが邪魔な場合に便利です。 ``` python35 manage.py flush ```
続きを読む

pythonのunicodeエラーをどうにかする

2017年10月10日

任意のpythonのsite-packages下に以下のsitecustomize.pyを配置することでデフォルトの文字コードを変更できエラーを解消することができる。 ``` import sys sys.setdefaultencoding() ```
続きを読む

[django]データベースから任意の条件のデータを取得する

2017年10月6日

djangoではobjects.all()で任意の条件のSQL文を作成、実行して、それにあったデータをデータベースから取得することができる。 ``` class.objects.all().filter(条件) ``` 詳しくはここに書いてあります。 http://thinkami.hatenablog.com/entry/2015/09/04/235841
続きを読む

htmlのtdタグで改行させたくないとき

2017年9月26日

htmlタグでテーブルを作成するとき、項目は見やすくするために改行させたくないときがある。 そんなときは以下をのnowrapを使えば改行しなくなる。 ``` abcdefg hijklmnop qrstuv wxyz ```
続きを読む

DjangoでDisallowedHostを回避

2017年9月22日

バージョン1.10以降ではDjangoをインストールしサーバにアクセスするとDisallowedHostとエラーになる。 この場合は、DEBUGをFalseにするかALLOWED_HOSTSにサーバのIPアドレスを追加すると回避できる。 デバッグが見れないとテスト環境では困ることもあるので、本番環境ではDEBUG、テスト環境ではALLOWED_HOSTSを変更すると良い。 ``` vim settings.py ・・・ ALLOWED_HOSTS = ["
続きを読む

Microsoft SQL Serverのバックアップをスクリプトで行う

2017年9月15日

### バッチファイルの作成 sqlcmdでSQL文を自動的に実行するためにD:\にBackupフォルダを作成し中にバッチファイルを作成 D:\Backup\Backup.bat ``` sqlcmd -S localhost -i D:\Backup\Script.sql >> D:\Backup\Backup.log ``` ### 実行するSQL文を作成 C:\Backup\Backup.sql ``` BACKUP DATABASE SA
続きを読む

VSFTPDをバーチャルユーザでFTPしたい時にハマる箇所

2017年9月12日

# /etc/pam.d/vsftpdの部分 OSが64bitだとlibではなくlib64になるので注意。 ``` auth required /lib64/security/pam_userdb.so db=/etc/vsftpd/virtual_login account required /lib64/security/pam_userdb.so db=/etc/vsftpd/virtual_login ``` # ホームディレクトリを設定したけど上
続きを読む

SElinuxが悪差をするので止める

2017年8月31日

postfixや他のサービスを導入しようとするとSElinuxが悪差をして挙動がおかしくなることがある。 そんなときにはSElinuxを止めよう。 ``` $ getenforce Enforcing $ setenforce 0 $ getenforce Permissive ``` ``` $ vim /etc/selinux/config ・・・ #SELINUX=enforcing SELINUX=disabled ・・・
続きを読む

postfixで特定のメールやドメインを拒否する

2017年8月29日

**/etc/postfix/main.cf** ``` smtpd_client_restrictions = reject_unknown_sender_domain reject_non_fqdn_sender hash:/etc/postfix/reject_list ``` **/etc/post/reject_list** ``` [ドメイン名など] DISCARD ``` **reject_unknown_sender_
続きを読む

ansibleでWebからダウンロードする

2017年8月8日

get_urlを使うことでダウンロードすることが出来る。 ``` get_url: url=[url] dest=[保存先] ``` ※commandを使ってwgetでやるのはあまり推奨されていません。
続きを読む

pipをバージョンアップする

2017年8月4日

pipが古いインストールされるモジュールが古かったり、インストール出来なかったりするのでアップグレードしたい。 以下のコマンドでアップグレードすることが出来る。 ``` pip install --upgrade pip ``` pipコマンドが使えない場合はrootから一度ログアウトして再度ログインするか、サーバに再度ログインし直すことで直せます。
続きを読む

gdbでコアダンプの解析

2017年8月1日

``` gdb [coreファイル] ・・・ gdb> where ``` これでコアダンプの解析を行うことができる。 必要パッケージはyumにてインストール。 debuginfoが必要となるので必要に応じてdebuginfo-installでインストールを行う。 gdbは賢いのでコアダンプの解析に応じて必要なパッケージを教えてくれます。
続きを読む

特定のログをアクセスログに出力させない

2017年7月28日

mapモジュールを使用することで特定のアクセスログを出力させないように出来ます。 何かと便利です! **/.conf** ``` map $status $log_s { ~503 0; default 1; } ``` **/nginx.conf** ``` access_log /var/log/nginx/access.log main if=$log_s; ``` https://www.bjornjoh
続きを読む

シェルスクリプトでループ処理をスキップする

2017年7月28日

continueを使うことで処理をスキップして次のループに移行することができる。 ``` for i in `seq 3` do if [ $i = 2 ]; then continue fi echo $i done > 1 > 3 ``` 数字を引数として与えれば任意の数だけループをスキップできる。 ``` continue 数字 ```
続きを読む

pythonのリストの空データを削除する

2017年7月21日

ラムダ式を使えば1行で出来ます! ``` List = filter(lambda str:str != '', List) ```
続きを読む

pythonでスプレッドシートを読み込む

2017年7月14日

これをそのままコピペして値を入力すればworksheetにシートがごそっと入ります! Google Drive APIが必要なので取得してjson部分に入れてください。 ``` import os import gspread from oauth2client.service_account import ServiceAccountCredentials DOC_ID = "○○○○○○○○○" JSON_PATH = "○○○○○.json"
続きを読む

特定ディレクトリ、ファイルへのアクセスログを別で出力する

2017年7月11日

``` SetEnvIf Request_URI "^/sample/" log nolog CustomLog /etc/httpd/logs/sample_access_log combined env=log CustomLog /etc/httpd/logs/not_sample_access_log combined env=!nolog ``` logとnologは任意の変数名なのでなんでも良い。 特定のログを含めたい場合はenv=に変数を入れることで
続きを読む

各コアのCPU使用率やプロセスごとのCPU使用率を見る

2017年6月30日

# インストール ``` yum install sysstat ``` # 実行結果 以下は2秒ごとに各コアの使用率を取得 ``` mpstatl -P ALL 2 08:35:18 AM CPU %usr %nice %sys %iowait %irq %soft %steal %guest %idle 08:35:20 AM all 0.17 0.00 0.25 0.00
続きを読む

Terraformで複数のインスタンス作成してELBに紐付ける

2017年6月27日

以下のようにする事で、Terrafromでインスタンスを2つ作成後に、ELBを作成して紐付けする事ができる。 検証環境を簡単に作れるので便利。 ``` resource "aws_instance" "〇〇" { count = 2 ami = "ami-3bd3c45c" instance_type = "t2.micro" key_name = "〇〇" vpc_security_group_ids = ["〇〇
続きを読む