StoryCode

'분류 전체보기'에 해당되는 글 563건

  1. KoNLPy, TF-IDF Vectorizor
  2. KOMORAN 설치
  3. Mecab Kor 사용법
  4. MAU, MCU, DAU, ACU
  5. Docker 설치
  6. Install mariadb.10.6.tar.gz in ubuntu
  7. 데이타베이스 콘솔 기본 명령어 모음
  8. Windows.Cmd.Batch.특정프로그램실행여부
  9. SSH 보안 설정
  10. Spool 옵션

KoNLPy, TF-IDF Vectorizor

형태소분석,Lucene,mecap,komoran,tf-idf vector
반응형

# 참조 : https://konlpy.org/ko/v0.5.2/install/

# 참조 : http://doc.mindscale.kr/km/unstructured/03.html

# 참조 : https://dianakang.tistory.com/48

 

형태소 분석기는 형태소를 분석해주는 프로그램이다. konlpy는 Python에서 사용할 수 있는 오픈소스 형태소 분석기로, 기존에 공개된 꼬꼬마(Kkma), 코모란(Komoran), 한나눔(Hannanum), 트위터(Twitter), 메카브(Mecab)를 한 번에 설치하고 동일한 방법으로 쓸 수 있게 해준다. (단 메카브는 윈도에서 사용할 수 없다)

 

sudo apt-get install g++ openjdk-8-jdk python3-dev python3-pip curl
python3 -m pip install --upgrade pip
python3 -m pip install konlpy
sudo apt-get install curl git
bash <(curl -s https://raw.githubusercontent.com/konlpy/konlpy/master/scripts/mecab.sh)
# 도커 기반일 경우
> FROM python:3

> ENV JAVA_HOME /usr/lib/jvm/java-1.7-openjdk/jre
> RUN apt-get update && apt-get install -y g++ default-jdk
> RUN pip install konlpy

> # Write left part as you want

 

 

 

# 다운로드 
https://archive.ics.uci.edu/ml/datasets/Sentiment+Labelled+Sentences
> vi amazonpkl.py
import pandas as pd

df = pd.read_csv('amazon_cells_labelled.txt', sep="\t", header=None)

content = df[0]
sentiment = df[1]

from sklearn.feature_extraction.text import TfidfVectorizer
tfidf = TfidfVectorizer(stop_words='english',
                        lowercase=True,
                        max_features=1000)
tdm = tfidf.fit_transform(content)
print(tfidf.get_feature_names()[-10:])

import joblib
with open('amazon.pkl', 'wb') as f:
    joblib.dump(
        {'vectorizer': tfidf, 'tdm': tdm, 'sentiment': sentiment},
        f
    )





> python amazonpkl.py
> vi amazonpklinfo.py
import joblib

with open('amazon.pkl', 'rb') as f:
    data = joblib.load(f)

locals().update(data)

count = tdm.sum(axis=0)

import pandas as pd
word_count = pd.DataFrame({
    '단어': vectorizer.get_feature_names(),
    '빈도': count.flat})

print(word_count.tail())




> python amazonpklinfo.py
반응형

'형태소분석,Lucene,mecap,komoran,tf-idf vector' 카테고리의 다른 글

KOMORAN 설치  (0) 2022.01.24
Mecab Kor 사용법  (0) 2022.01.24
기본 설치 및 테스트  (0) 2019.04.25

KOMORAN 설치

형태소분석,Lucene,mecap,komoran,tf-idf vector
반응형

# KoNLPy 를 설치하면 KOMORAN 까지 한방에 다 해결되니 아래 링크로 보자.

https://storycode.tistory.com/466

 

# 참조 : https://www.shineware.co.kr/products/komoran/#demo?utm_source=komoran-kr&utm_medium=Referral&utm_campaign=github-demo

 

# https://github.com/shineware/PyKOMORAN
pip install PyKomoran

# 혹은

git clone https://github.com/shineware/PyKOMORAN
cd PyKOMORAN/python
sudo python setup.py install

 

sudo apt install openjdk-11-jre-headless

 

> vi test.py

from PyKomoran import *

komoran = Komoran("EXP")
print(komoran.get_plain_text("KOMORAN은 한국어 형태소 분석기입니다."))
print(komoran.get_plain_text("① 대한민국은 민주공화국이다."))

komoran = Komoran("STABLE")
print(komoran.get_plain_text("KOMORAN은 한국어 형태소 분석기입니다."))
print(komoran.get_plain_text("① 대한민국은 민주공화국이다."))

> python test.py

# EXP ( = Full )
KOMORAN/SL 은/JX 한국어/NNP 형태소/NNP 분석기/NNG 이/VCP ㅂ니다/EF ./SF
①/SW 대한민국/NNP 은/JX 민주공화국/NNP 이/VCP 다/EF ./SF
# STABLE ( = Light )
KOMORAN/SL 은/JX 한국어/NNP 형태소/NNG 분석기/NNG 이/VCP ㅂ니다/EF ./SF
①/SW 대한민국/NNP 은/JX 민주/NNG 공화국/NNG 이/VCP 다/EF ./SF

 

 

반응형

'형태소분석,Lucene,mecap,komoran,tf-idf vector' 카테고리의 다른 글

KoNLPy, TF-IDF Vectorizor  (0) 2022.01.24
Mecab Kor 사용법  (0) 2022.01.24
기본 설치 및 테스트  (0) 2019.04.25

Mecab Kor 사용법

형태소분석,Lucene,mecap,komoran,tf-idf vector
반응형
tar xvfz mecab-ko-dic-2.1.1-20180720.tar.gz
cd mecab-ko-dic-2.1.1-20180720
./configure
make
sudo make install

# 참조 : https://bitbucket.org/eunjeon/mecab-ko-dic/src/master/

# 참조 : https://mondayus.tistory.com/46

> cd download

1) download 3 files

wget https://bitbucket.org/eunjeon/mecab-ko/downloads/mecab-0.996-ko-0.9.2.tar.gz
wget https://bitbucket.org/eunjeon/mecab-ko-dic/downloads/mecab-ko-dic-2.1.1-20180720.tar.gz
git clone https://bitbucket.org/eunjeon/mecab-python-0.996.git

2) mecab-0.996

tar xvfz mecab-0.996-ko-0.9.2.tar.gz
cd mecab-0.996-ko-0.9.2
./configure
make
make check
sudo make install
# sudo ldconfig
export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH

3) mecab-ko-dic

tar xvfz mecab-ko-dic-2.1.1-20180720.tar.gz
cd mecab-ko-dic-2.1.1-20180720
./configure
make
sudo make install
# 아래 디렉토리에 설치
/usr/local/lib/mecab/dic/mecab-ko-dic
# Jupyter 에서 사용 가능

from konlpy.tag import Mecab
mecab = Mecab()

 

4) 테스트

$ mecab -d /usr/local/lib/mecab/dic/mecab-ko-dic
mecab-ko-dic은 MeCab을 사용하여, 한국어 형태소 분석을 하기 위한 프로젝트입니다.
mecab    SL,*,*,*,*,*,*,*
-    SY,*,*,*,*,*,*,*
ko    SL,*,*,*,*,*,*,*
-    SY,*,*,*,*,*,*,*
dic    SL,*,*,*,*,*,*,*
은    JX,*,T,은,*,*,*,*
MeCab    SL,*,*,*,*,*,*,*
을    JKO,*,T,을,*,*,*,*
사용    NNG,행위,T,사용,*,*,*,*
하    XSV,*,F,하,*,*,*,*
여    EC,*,F,여,*,*,*,*
,    SC,*,*,*,*,*,*,*
한국어    NNG,*,F,한국어,Compound,*,*,한국/NNG/*+어/NNG/*
형태소    NNG,*,F,형태소,Compound,*,*,형태/NNG/*+소/NNG/*
분석    NNG,행위,T,분석,*,*,*,*
을    JKO,*,T,을,*,*,*,*
하    VV,*,F,하,*,*,*,*
기    ETN,*,F,기,*,*,*,*
위한    VV+ETM,*,T,위한,Inflect,VV,ETM,위하/VV/*+ᆫ/ETM/*
프로젝트    NNG,*,F,프로젝트,*,*,*,*
입니다    VCP+EF,*,F,입니다,Inflect,VCP,EF,이/VCP/*+ᄇ니다/EF/*
.    SF,*,*,*,*,*,*,*
EOS

 

5) 기타 확인

품사확인)

https://docs.google.com/spreadsheets/d/1-9blXKjtjeKZqsf4NzHeYJCrr49-nXeRF6D80udfcwY/edit#gid=589544265

 

6) mecab python

cd mecab-python-0.996
python setup.py build
su
# 이제 Jupyter 에서 정상적으로 Mecab 사용 가능

from konlpy.tag import Mecab
mecab = Mecab()

 

 

# 추가

# 사용자 사전 등록 및 우선순위 높이기

참고 : https://bitbucket.org/eunjeon/mecab-ko-dic/src/df15a487444d88565ea18f8250330276497cc9b9/final/user-dic/README.md

참고 : https://kugancity.tistory.com/entry/mecab에-사용자사전기분석-추가하기

- 표층형 : 단어명
- 1785,3543,4267 : 좌문맥ID, 우문맥ID, 단어비용 (자동 생성 처리로 입력)
- 품사태그 : 품사 입력 (mecab-ko-dic 품사 태그를 참조하여 입력)
- 의미분류 : 인명 또는 지명 또는 *
- F : 받침유무 (원 단어의 끝 글자 받침 유무로 T, F 입력)
- 읽기 : 발음 (원 단어의 발음을 입력)
- 타입 : inflected, compound, Preanalysis, *  
- 첫번째 품사, 마지막 품사 : 기분석으로 나눠지는 토큰에 대한 각 품사 입력 (mecab-ko-dic 품사 태그를 참조하여 입력)
- 원형 : 토큰 들로 나눠지는 부분 +로 입력 ( 각 토큰 : 표층형/품사태그/의미분류 ) 
- 인덱스표현  : 토큰 들로 나눠지는 부분 +로 입력 ( 각 토큰:  표층형/품사태그/의미부류/PositionIncrementAttribute/PositionLengthAttribute) 

1. 사전 등록

 - mecab-ko-dic 설치 위치로 가서 nnp.csv에 사용자 사전 입력

>> cd ~/mecab-ko-dic-2.1.1-20180720/user-dic
>> vi nnp.csv

다음 형태로 입력
구르미그린달빛,0,0,0,NNP,*,T,구르미그린달빛,*,*,*,*
고프로,0,0,0,NNP,*,F,고프로,*,*,*,*
썸즈업,0,0,0,NNP,*,T,썸즈업,*,*,*,*
썬팍,0,0,0,NNP,*,T,썬팍,*,*,*,*

 - 적용 전 테스트

 - 사전 적용

   tools>> ./add-userdic.sh

   mecab-ko-dic-2.1.1-20180720 >> make install

(base) ➜  mecab-ko-dic-2.1.1-20180720 cd tools
(base) ➜  tools ./add-userdic.sh
(base) ➜  mecab-ko-dic-2.1.1-20180720 make install
generating userdic...
nnp.csv
.
.
.
emitting matrix      : 100% |###########################################|

done!
echo To enable dictionary, rewrite /usr/local/etc/mecabrc as \"dicdir = /usr/local/lib/mecab/dic/mecab-ko-dic\"
To enable dictionary, rewrite /usr/local/etc/mecabrc as "dicdir = /usr/local/lib/mecab/dic/mecab-ko-dic"
(base) ➜  tools

 - 사전 적용 후 테스트

  사전은 적용 되었지만 등록한 단어의 우선순위(단어비용)가 낮아서, 원하지 않는 모양으로 분해 되는 것을 확인함. (단어비용을 낮추면 검색 우선순위가 높아짐)
  현재 적용된 단어 비용

              구르미그린달빛의 단어비용 : 2953
              구르/미/그린/달빛 단어비용 : 2679/3464/1247/2215

2. 우선 순위 적용 (단어비용 낮추기)

 - mecab-ko-dic-2.1.1-20180720 >> vi user-nnp.csv

 - 2953 → 0 변경 후 저장

 - 변경 사항 반영
    mecab-ko-dic-2.1.1-20180720 >> sudo make clean
    mecab-ko-dic-2.1.1-20180720 >> sudo make install

 - 결과 확인

 

반응형

'형태소분석,Lucene,mecap,komoran,tf-idf vector' 카테고리의 다른 글

KoNLPy, TF-IDF Vectorizor  (0) 2022.01.24
KOMORAN 설치  (0) 2022.01.24
기본 설치 및 테스트  (0) 2019.04.25

MAU, MCU, DAU, ACU

IT 용어, 인터넷 활용 등등
반응형

# https://brunch.co.kr/@userhabit/19

# https://brunch.co.kr/@supims/165

 

 

 

MAU = Monthly Activity User

DAU = Daily Activity User

MCU = Maximum Current User

ACU = Average Current User

반응형

'IT 용어, 인터넷 활용 등등' 카테고리의 다른 글

전자정부표준프레임워크 (eGovFrame)  (0) 2022.03.04
Dell, Linux, Ubuntu, TouchScreen, Off  (0) 2022.01.28
Fluent API, 빌더 패턴  (0) 2021.11.15
Template Meta Programming  (0) 2021.11.14
JWT ( JSON Web Token )  (0) 2021.08.19

Docker 설치

Database 관리/PostgreSQL
반응형

1. hub.docker.com> search offiicial immage for postgresql > click > find command like "docker pull postgres"

 

2. docker pull postgres

 

3. docker run -d -p 5432:5432 -e POSTGRES_PASSWORD="<YourStrong@Passw0rd>" --name PostgreSQL01 postgres

 

4. 

반응형

Install mariadb.10.6.tar.gz in ubuntu

Database 관리/Maria DB
반응형

# 참조 : https://dbwriter.io/installation-mariadb10/

 

1) 다운로드

https://downloads.mariadb.org/

 

2) 압축해제 및 mysql 사용자 추가

sudo groupadd mysql
sudo useradd -g mysql mysql
cd /usr/local
sudo tar -zxvpf mariadb-10.6.4-linux-systemd-x86_64.tar.gz
sudo ln -s mariadb-10.6.4-linux-systemd-x86_64 mysql

 

3) vi /etc/my.cnf

[client-server]
port=3306

# This will be passed to all MariaDB clients
[client]

# The MariaDB server
[mysqld]
# Directory where you want to put your data
datadir=/usr/local/mysql/data

 

character-set-server = utf8mb4
init_connect = SET collation_connection = utf8mb4_general_ci
init_connect = SET NAMES utf8mb4


# This is the prefix name to be used for all log, error and replication files
log-basename=mariadb

 

 

 

4) 초기화

cd /usr/local/mysql
sudo ./scripts/mysql_install_db --user=mysql

 

 

5) 디렉토리 권한 변경

/usr/local/mysql> sudo chown -R root .
/usr/local/mysql> sudo chown -R mysql data

 

6) 서버 기동

sudo ./bin/mysqld_safe --user=mysql &
or
sudo ./bin/mysqld_safe --defaults-file=~/.my.cnf --user=mysql &

 

7) 오류발생시

# ERROR 2002 (HY000): Can't connect to local server through socket '/var/run/mysqld/mysqld.sock' (2)

sudo mkdir /var/run/mysqld

sudo ln - /tmp/mysql.sock /var/run/mysqld/mysqld.sock

 

8)

> mysql

Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 10.6.4-MariaDB MariaDB Server

Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.

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

MariaDB [(none)]> select user();

+------------------+
| user()           |
+------------------+
| user@localhost |
+------------------+

 

9)  sudo ./mysql_secure_installation

Switch to unix_socket authentication [Y/n] n
Change the root password? [Y/n] Y
New password: "ROOT 비번 설정"
Re-enter new password:
Password updated successfully!
Remove anonymous users? [Y/n] Y
Disallow root login remotely? [Y/n] n
Remove test database and access to it? [Y/n] n
Reload privilege tables now? [Y/n] Y
 ... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.

Thanks for using MariaDB!

 

10)

mysql> select host, user from mysql.user;

mysql> create user ml@localhost identified by 'ml';

mysql> flush privileges;

mysql> grant all privileges on *.* to ml@'localhost' identified by 'ml';

mysql> grant all privileges on *.* to ml@'%' identified by 'ml';
mysql> flush privileges;

 

11)

show variables like '%set%';

SELECT schema_name, default_character_set_name, DEFAULT_COLLATION_NAME FROM information_schema.SCHEMATA ;

반응형

'Database 관리 > Maria DB' 카테고리의 다른 글

Data Directory 변경  (0) 2023.05.26
binlog 삭제  (0) 2023.01.16
Lock, 락, 해결  (0) 2021.10.29
RDS, export, mysqldump/ import  (0) 2021.10.14
[편법] CVS Parsing, 파싱  (0) 2021.09.23

데이타베이스 콘솔 기본 명령어 모음

Database 관리
반응형
  Oracle MySQL / MariaDB postgres Mongdb
접속   mysql -u id -p pwd psql -U postgres  
Exit   exit \q  
데이타베이스 목록   show databaes; \l
select 
* from pg_catalog.pg_namespace;
 
데이타베이스 선택   use db명 \c databasename  
테이블 목록     SELECT *
FROM pg_catalog.pg_tables
WHERE
schemaname = 'public'
AND tablename LIKE 'Weath%';
 
         

 

반응형

'Database 관리' 카테고리의 다른 글

Database Docker (mysql, mariadb, oracle, postgres...)  (0) 2024.08.02
디비별 SQL 비교  (0) 2020.01.12

Windows.Cmd.Batch.특정프로그램실행여부

Shell Script, Command, Batch, 쉘스크립트, 배치
반응형

참조 : https://codingman.tistory.com/126

 

1. 텍스트 파일을 하나 만듭니다

   - 명칭은 편하신데로 만드셔도 됩니다

     (저는 ReStartBatch.bat라고 만들었습니다)

 

2. 텍스트 파일에 아래와 같이 작성해줍니다

@Echo off
CD C:\
TASKLIST | FIND "실행파일이름.exe" > NUL
IF NOT ERRORLEVEL 1 (
	ECHO Running.
	GOTO PGOK
) ELSE (
	ECHO Not Running.
	GOTO PGNG
)

:PGOK
	ECHO Nothing.
	GOTO END
:PGNG
	ECHO Restart. %DATE% %TIME% >> process_test.txt
	START C:\실행파일이 존재하는 절대경로.exe
	GOTO END
:END
	ECHO
EXIT

 

반응형

SSH 보안 설정

Server 관리/Linux
반응형

# https://www.lesstif.com/ws/ssh-43843905.html

 

SSH 보안 설정

먼저  SSH 서버를 안전하게 구성하기 위해서 꼭 알아두어야 할 설정 파일인 /etc/ssh/sshd_config 의 주요 보안 관련 설정의 의미와 권장하는 설정을 알아봅시다.

 

방화벽 적용

SSH 서버는 보안상 매우 중요하므로 SSH 로 연결할 수 있는 클라이언트의 IP 를 명시적으로 등록하도록 시스템의 방화벽을 설정할 필요가 있습니다. 특히 SSH 는 전 장에서 설명한 베스천 호스트 를 두고 이 서버를 통해서만 접속하도록 방화벽을 설정하는 것을 권장합니다. (참고: firewalld 방화벽 사용)

 

22번이 아닌 포트 사용

SSH 의 기본 포트는 22번이지만 외부에서 22 번 포트에 대해 오픈되었는지 스캔후 에 열려있다면 무작위 공격(Brute-force attack) 을 시도할 수가 있습니다. 

공용으로 SSH 를 오픈해야 한다면 기본 포트를 변경하는 게 좋습니다.

# Port 22
Port 22000
Plain text
Copy
CODE
Port 설정

 

세션 타임아웃 설정

정해진 시간동안 사용하지 않으면 강제로 세션을 종료하도록 설정합니다. 종료 시간은 (ClientAliveInterval * ClientAliveCountMax) 이며 단위는 초입니다.

아래 설정은 30분동안 사용하지 않으면 ssh 세션을 자동으로 종료합니다.

ClientAliveInterval 600
ClientAliveCountMax 3
Plain text
Copy
CODE

 

root login 차단

root 사용자 로그인을 허용하지 여부를 설정하며 SSH 가 공용으로 열렸고 root 로그인까지 허용한다면 시스템의 모든 권한을 탈취당할 수 있으니 root 로 바로 로그인은 허용하지 않아야 합니다.

PermitRootLogin no
Plain text
Copy
CODE

 

우분투나 Amazon Linux 는 아래와 같이 설정되어 있는데 이는 rsync 로 원격지에서 백업등 root 로 특정 명령어를 실행하기 위해서이며 root 로그인을 허용할 경우 반드시 암호가 아닌 공개키 방식으로 허용해야 합니다.

PermitRootLogin forced-commands-only
Plain text
Copy
CODE

 

 

UsePrivilegeSeparation sandbox  

CentOS 7 의 sshd 에서는 sandbox가 기본 설정이며 기존 버전인 6은 yes 로 설정되어 있습니다.

yes 일 경우 ssh 인증을 통과한 후에 sshd 가 해당 세션용 ssh 프로세스를 로그인한 사용자의 권한으로 실행하며 sandbox 일 경우 사전에 인증되지 않은 권한없는 프로세스는 추가적으로 여러 가지 기능이 제한됩니다.

no 경우 일반 사용자로 로그인해도 root 로 sshd 가 실행되므로 절대 설정하면 안됩니다.

UsePrivilegeSeparation yes
Plain text
Copy
CODE

 

PermitEmptyPasswords

기본 설정은 no 이며 암호가 없는 계정에 대해서는 로그인을 허용하지 않습니다.

PermitEmptyPasswords no
Plain text
Copy
CODE

 

 

암호 대신 공개키로 인증

공개키 인증(PubkeyAuthentication)을 켜고 암호 기반 인증(PasswordAuthentication)을 끄면 공개키 방식으로만 인증하므로 훨씬 보안이 강화됩니다.

PubkeyAuthentication yes
PasswordAuthentication no
Plain text
Copy
CODE

공개키 인증만 사용하려면 사전에 client 의 공개키를 등록해 두어야 합니다.

 

연결하려는 계정에서 공개키가 없을 경우 ssh-keygen 명령어를 사용하여 공개키(~/.ssh/id_rsa.pub)와 개인키(~/.ssh/id_rsa) 를 생성할 수 있습니다.

생성한 개인키는 잘 보관해야 하며 공개키를 연결하려는 SSH 서버에 복사해 주면 공개키 기반으로 로그인할 수 있습니다.

다음은 원격지 SSH  서버가 192.168.10.1 일 경우 lesstif 계정으로 공개키를 복사하는 예제입니다.

$ ssh-copy-id -i ~/.ssh/id_rsa.pub lesstif@192.168.10.1
Plain text
Copy
CODE
ssh 공개키 원격지 복사

 

 

MaxAuthTries

옵션에 지정한 숫자 이상으로 로그인 시도에 실패하면 접속이 강제로 종료됩니다. 기본 설정은 6이며 SSH 를 any 로 오픈할 경우 다음 절에서 설명하는 fail2ban 을 적용하는 것이 좋습니다.

MaxAuthTries 5
Plain text
Copy
CODE

 

LoginGraceTime

여기에 지정된 시간 내에 로그인하지 않을 경우 접속이 강제로 종료됩니다. 기본은 2분이지만 이보다 더 짧게 하는 것이 좋으며 0 으로 설정하면 시간 제한 옵션이 비활성화됩니다.

LoginGraceTime 30
Plain text
Copy
CODE

 

AllowUsers / DenyUsers

SSH 는 기본적으로 모든 사용자가 사용할 수 있지만 특정 사용자만 허용하겠다면 AllowUsers 에 허용할 사용자를 지정합니다. 이럴 경우 다른 사용자는 SSH 로그인을 할 수 없게 됩니다.

다음은 lesstif 사용자와 centos7 사용자만 SSH 를 사용하도록 하는 예제이며 여러 사용자를 지정할 경우에는 공백으로 구분하면 됩니다.

AllowUsers lesstif centos7
Plain text
Copy
CODE
특정 사용자만 SSH 허용

 

사용자와 호스트를 묶어서 특정 사용자는 특정 호스트에서만 접속하도록  설정할 수도 있습니다. 다음은 IP 주소가 192.168.10.3 인 호스트의 lesstif 사용자만 SSH 로 접속할 수 있도록 설정하는 예제입니다.

AllowUsers lesstif@192.168.10.3
Plain text
Copy
CODE
특정 사용자와 호스트만 SSH 허용

또는 사용자의 ID 에 와일드 카드(*)를 사용하여 호스트만을 지정할수 있습니다. 다음 예는 192.168.10.3 인 호스트의 모든 사용자에게 SSH 사용을 허용합니다.

AllowUsers *@192.168.10.3
Plain text
Copy
CODE
특정 사용자만 SSH 허용

이와는 달리 DenyUsers 를 사용하면 지정한 사용자 외의 모든 사용자의 SSH 사용을 허가하게 됩니다. 혼동의 우려가 있으니 AllowUsers  DenyUsers  를 혼용해서 사용하는 것보다는 하나의 키워드만 사용해서 접근 권한을 설정하는 게 좋으며 whitelist 방식인 AllowUsers  가 더 관리가 용이합니다.

 

데몬 재구동

변경한 설정을 반영하려면 ssh 데몬 프로세스를 재구동해야 합니다.

$ sudo systemctl restart sshd
Plain text
Copy
CODE
sshd 재시작

우분투는 ssh 서비스 이름이 ssh 이므로 sudo systemctl restart ssh 로 구동하면 됩니다.

 

반응형

Spool 옵션

Database 관리/Tibero
반응형

# 참조 : https://positivemh.tistory.com/417

 

OS환경 : Oracle Linux6.8(64bit)

 

DB 환경 : Oracle Database 11.2.0.4

 

방법 : sqlplus spool 기능 사용 시 명령어 안나오게 하는방법 sqlplus 명령어

sqlplus에서 spool 기능을 이용해 쿼리를 실행할 때 해당 쿼리도 같이 spool 한 파일에 나옴

기존 방법으로 sqlplus 접속 후 spool 후 쿼리 실행

 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
$ sqlplus scoot/tiger
 
SQL*Plus: Release 11.2.0.4.0 Production on Mon Feb 11 16:46:43 2019
 
Copyright (c) 19822013, Oracle.  All rights reserved.
 
 
Connected to:
Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
With the Partitioning, Real Application Clusters and Data Mining options
 
SQL> spool imsi1.txt
SQL> select * from emp;
 
     EMPNO ENAME      JOB           MGR HIREDATE        SAL       COMM     DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ----------
      7839 KING       PRESIDENT (null)       17-NOV-81       5000 (null)           10
      7698 BLAKE      MANAGER          7839 01-MAY-81       2850 (null)           30
      7782 CLARK      MANAGER          7839 09-JUN-81       2450 (null)           10
      7566 JONES      MANAGER          7839 02-APR-81       2975 (null)           20
      7788 SCOTT      ANALYST          7566 19-APR-87       3000 (null)           20
      7902 FORD       ANALYST          7566 03-DEC-81       3000 (null)           20
      7369 SMITH      CLERK          7902 17-DEC-80        800 (null)           20
      7499 ALLEN      SALESMAN          7698 20-FEB-81       1600        300       30
      7521 WARD       SALESMAN          7698 22-FEB-81       1250        500       30
      7654 MARTIN     SALESMAN          7698 28-SEP-81       1250       1400       30
      7844 TURNER     SALESMAN          7698 08-SEP-81       1500      0       30
      7876 ADAMS      CLERK          7788 23-MAY-87       1100 (null)           20
      7900 JAMES      CLERK          7698 03-DEC-81        950 (null)           30
      7934 MILLER     CLERK          7782 23-JAN-82       1300 (null)           10
 
14 rows selected.
 
SQL> spool off
SQL> exit

 

 

spool 된 imsi1.txt 파일 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
$ cat imsi1.txt
SQL> select * from emp;
 
     EMPNO ENAME      JOB           MGR HIREDATE        SAL       COMM     DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ----------
      7839 KING       PRESIDENT (null)       17-NOV-81       5000 (null)           10
      7698 BLAKE      MANAGER          7839 01-MAY-81       2850 (null)           30
      7782 CLARK      MANAGER          7839 09-JUN-81       2450 (null)           10
      7566 JONES      MANAGER          7839 02-APR-81       2975 (null)           20
      7788 SCOTT      ANALYST          7566 19-APR-87       3000 (null)           20
      7902 FORD       ANALYST          7566 03-DEC-81       3000 (null)           20
      7369 SMITH      CLERK          7902 17-DEC-80        800 (null)           20
      7499 ALLEN      SALESMAN          7698 20-FEB-81       1600        300       30
      7521 WARD       SALESMAN          7698 22-FEB-81       1250        500       30
      7654 MARTIN     SALESMAN          7698 28-SEP-81       1250       1400       30
      7844 TURNER     SALESMAN          7698 08-SEP-81       1500      0       30
      7876 ADAMS      CLERK          7788 23-MAY-87       1100 (null)           20
      7900 JAMES      CLERK          7698 03-DEC-81        950 (null)           30
      7934 MILLER     CLERK          7782 23-JAN-82       1300 (null)           10
 
14 rows selected.
 
SQL> spool off

 

 

 

 

-s 옵션 사용해서 sqlplus 접속 후 spool 후 쿼리 실행

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
$ sqlplus -s scott/tiger
spool imsi2.txt
select * from emp;
 
     EMPNO ENAME      JOB           MGR HIREDATE        SAL       COMM     DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ----------
      7839 KING       PRESIDENT (null)       17-NOV-81       5000 (null)           10
      7698 BLAKE      MANAGER          7839 01-MAY-81       2850 (null)           30
      7782 CLARK      MANAGER          7839 09-JUN-81       2450 (null)           10
      7566 JONES      MANAGER          7839 02-APR-81       2975 (null)           20
      7788 SCOTT      ANALYST          7566 19-APR-87       3000 (null)           20
      7902 FORD       ANALYST          7566 03-DEC-81       3000 (null)           20
      7369 SMITH      CLERK          7902 17-DEC-80        800 (null)           20
      7499 ALLEN      SALESMAN          7698 20-FEB-81       1600        300       30
      7521 WARD       SALESMAN          7698 22-FEB-81       1250        500       30
      7654 MARTIN     SALESMAN          7698 28-SEP-81       1250       1400       30
      7844 TURNER     SALESMAN          7698 08-SEP-81       1500      0       30
      7876 ADAMS      CLERK          7788 23-MAY-87       1100 (null)           20
      7900 JAMES      CLERK          7698 03-DEC-81        950 (null)           30
      7934 MILLER     CLERK          7782 23-JAN-82       1300 (null)           10
 
14 rows selected.
 
spool off

 

spool 된 imsi2.txt 파일 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
     EMPNO ENAME      JOB           MGR HIREDATE        SAL       COMM     DEPTNO
---------- ---------- --------- ---------- --------- ---------- ---------- ----------
      7839 KING       PRESIDENT (null)       17-NOV-81       5000 (null)           10
      7698 BLAKE      MANAGER          7839 01-MAY-81       2850 (null)           30
      7782 CLARK      MANAGER          7839 09-JUN-81       2450 (null)           10
      7566 JONES      MANAGER          7839 02-APR-81       2975 (null)           20
      7788 SCOTT      ANALYST          7566 19-APR-87       3000 (null)           20
      7902 FORD       ANALYST          7566 03-DEC-81       3000 (null)           20
      7369 SMITH      CLERK          7902 17-DEC-80        800 (null)           20
      7499 ALLEN      SALESMAN          7698 20-FEB-81       1600        300       30
      7521 WARD       SALESMAN          7698 22-FEB-81       1250        500       30
      7654 MARTIN     SALESMAN          7698 28-SEP-81       1250       1400       30
      7844 TURNER     SALESMAN          7698 08-SEP-81       1500      0       30
      7876 ADAMS      CLERK          7788 23-MAY-87       1100 (null)           20
      7900 JAMES      CLERK          7698 03-DEC-81        950 (null)           30
      7934 MILLER     CLERK          7782 23-JAN-82       1300 (null)           10
 
14 rows selected.

select * from emp; 구문이 나오지 않음

 

컬럼까지 나오지 않게 설정(set heading off)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
$ sqlplus -s scott/tiger 
set heading off
spool imsi3.txt
select * from emp;
 
      7839 KING       PRESIDENT (null)       17-NOV-81       5000 (null)           10
      7698 BLAKE      MANAGER          7839 01-MAY-81       2850 (null)           30
      7782 CLARK      MANAGER          7839 09-JUN-81       2450 (null)           10
      7566 JONES      MANAGER          7839 02-APR-81       2975 (null)           20
      7788 SCOTT      ANALYST          7566 19-APR-87       3000 (null)           20
      7902 FORD       ANALYST          7566 03-DEC-81       3000 (null)           20
      7369 SMITH      CLERK          7902 17-DEC-80        800 (null)           20
      7499 ALLEN      SALESMAN          7698 20-FEB-81       1600        300       30
      7521 WARD       SALESMAN          7698 22-FEB-81       1250        500       30
      7654 MARTIN     SALESMAN          7698 28-SEP-81       1250       1400       30
      7844 TURNER     SALESMAN          7698 08-SEP-81       1500      0       30
      7876 ADAMS      CLERK          7788 23-MAY-87       1100 (null)           20
      7900 JAMES      CLERK          7698 03-DEC-81        950 (null)           30
      7934 MILLER     CLERK          7782 23-JAN-82       1300 (null)           10
 
14 rows selected.

 

 

 

 

spool 된 imsi3.txt 파일 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$ cat imsi3.txt
      7839 KING       PRESIDENT (null)       17-NOV-81       5000 (null)           10
      7698 BLAKE      MANAGER          7839 01-MAY-81       2850 (null)           30
      7782 CLARK      MANAGER          7839 09-JUN-81       2450 (null)           10
      7566 JONES      MANAGER          7839 02-APR-81       2975 (null)           20
      7788 SCOTT      ANALYST          7566 19-APR-87       3000 (null)           20
      7902 FORD       ANALYST          7566 03-DEC-81       3000 (null)           20
      7369 SMITH      CLERK          7902 17-DEC-80        800 (null)           20
      7499 ALLEN      SALESMAN          7698 20-FEB-81       1600        300       30
      7521 WARD       SALESMAN          7698 22-FEB-81       1250        500       30
      7654 MARTIN     SALESMAN          7698 28-SEP-81       1250       1400       30
      7844 TURNER     SALESMAN          7698 08-SEP-81       1500      0       30
      7876 ADAMS      CLERK          7788 23-MAY-87       1100 (null)           20
      7900 JAMES      CLERK          7698 03-DEC-81        950 (null)           30
      7934 MILLER     CLERK          7782 23-JAN-82       1300 (null)           10
 
14 rows selected.

위에 나오던 컬럼들이 나오지 않음

 

14 rows seleted. 까지 삭제 하기(set feedback off)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
$ sqlplus -s scott/tiger 
set heading off
set feedback off
spool imsi4.txt
select * from emp;
 
      7839 KING       PRESIDENT (null)       17-NOV-81       5000 (null)           10
      7698 BLAKE      MANAGER          7839 01-MAY-81       2850 (null)           30
      7782 CLARK      MANAGER          7839 09-JUN-81       2450 (null)           10
      7566 JONES      MANAGER          7839 02-APR-81       2975 (null)           20
      7788 SCOTT      ANALYST          7566 19-APR-87       3000 (null)           20
      7902 FORD       ANALYST          7566 03-DEC-81       3000 (null)           20
      7369 SMITH      CLERK          7902 17-DEC-80        800 (null)           20
      7499 ALLEN      SALESMAN          7698 20-FEB-81       1600        300       30
      7521 WARD       SALESMAN          7698 22-FEB-81       1250        500       30
      7654 MARTIN     SALESMAN          7698 28-SEP-81       1250       1400       30
      7844 TURNER     SALESMAN          7698 08-SEP-81       1500      0       30
      7876 ADAMS      CLERK          7788 23-MAY-87       1100 (null)           20
      7900 JAMES      CLERK          7698 03-DEC-81        950 (null)           30
      7934 MILLER     CLERK          7782 23-JAN-82       1300 (null)           10

 

spool 된 imsi4.txt 파일 확인

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
$ cat imsi4.txt
      7839 KING       PRESIDENT (null)       17-NOV-81       5000 (null)           10
      7698 BLAKE      MANAGER          7839 01-MAY-81       2850 (null)           30
      7782 CLARK      MANAGER          7839 09-JUN-81       2450 (null)           10
      7566 JONES      MANAGER          7839 02-APR-81       2975 (null)           20
      7788 SCOTT      ANALYST          7566 19-APR-87       3000 (null)           20
      7902 FORD       ANALYST          7566 03-DEC-81       3000 (null)           20
      7369 SMITH      CLERK          7902 17-DEC-80        800 (null)           20
      7499 ALLEN      SALESMAN          7698 20-FEB-81       1600        300       30
      7521 WARD       SALESMAN          7698 22-FEB-81       1250        500       30
      7654 MARTIN     SALESMAN          7698 28-SEP-81       1250       1400       30
      7844 TURNER     SALESMAN          7698 08-SEP-81       1500      0       30
      7876 ADAMS      CLERK          7788 23-MAY-87       1100 (null)           20
      7900 JAMES      CLERK          7698 03-DEC-81        950 (null)           30
      7934 MILLER     CLERK          7782 23-JAN-82       1300 (null)           10

14 rows seleted. 결과 건수가 나오지 않음

반응형

'Database 관리 > Tibero' 카테고리의 다른 글

Tibero 2 CSV  (0) 2022.01.07
Tibero to PostgreSQL  (0) 2022.01.07