This commit is contained in:
Paul Trowbridge 2018-09-07 17:30:38 -04:00
parent dd05e92a70
commit 3c8a2adb31
6 changed files with 176 additions and 97 deletions

View File

@ -1,37 +1,37 @@
[mailing_list](https://www.postgresql.org/message-id/flat/CAHq%2BKHJOvZT8M-o_sE%2BQzqqBGnUjNubWo_rRmpHZyw5ZUuaseg%40mail.gmail.com)
wouldn't that be Pg authing against the OS (pam) which in turn is forwarding to krb5? which seems like an extra added step
sfrost [11:11 AM]
it's basically this:
ktpass -out postgres.keytab -princ
POSTGRES/centos(at)MY(dot)TESTDOMAIN(dot)LAN -mapUser enterprisedb -pass XXXXXX
-crypto DES-CBC-MD5
(except adjusted a bit to make it not use a shitty crypto)
you use ktpass to create your keytab file
copy the keytab file to the Linux box
arossouw [11:12 AM]
Seems like effort, i'll just play dumb on that one
sfrost [11:12 AM]
oh, gotta fix the princ too or whatever
but it's not that hard
and you might have to configure the realms, but not necessairly (that info is often in DNS already)
then you just tell PG where the keytab file is, set gssapi in PG's hba.conf, and create your users using their princ names, like 'sfrost@SNOWMAN.NET'
dtseiler [11:13 AM]
Im with @hunleyd, Id love to see a great howto post on that.
arossouw [11:14 AM]
I suppose the question is what is the advantage of using kerberos, and then deciding if its worth spending time on
sfrost [11:14 AM]
I just wrote it
^^^ see above
also wrote the advantage...
hunleyd [11:14 AM]
[mailing_list](https://www.postgresql.org/message-id/flat/CAHq%2BKHJOvZT8M-o_sE%2BQzqqBGnUjNubWo_rRmpHZyw5ZUuaseg%40mail.gmail.com)
wouldn't that be Pg authing against the OS (pam) which in turn is forwarding to krb5? which seems like an extra added step
sfrost [11:11 AM]
it's basically this:
ktpass -out postgres.keytab -princ
POSTGRES/centos(at)MY(dot)TESTDOMAIN(dot)LAN -mapUser enterprisedb -pass XXXXXX
-crypto DES-CBC-MD5
(except adjusted a bit to make it not use a shitty crypto)
you use ktpass to create your keytab file
copy the keytab file to the Linux box
arossouw [11:12 AM]
Seems like effort, i'll just play dumb on that one
sfrost [11:12 AM]
oh, gotta fix the princ too or whatever
but it's not that hard
and you might have to configure the realms, but not necessairly (that info is often in DNS already)
then you just tell PG where the keytab file is, set gssapi in PG's hba.conf, and create your users using their princ names, like 'sfrost@SNOWMAN.NET'
dtseiler [11:13 AM]
Im with @hunleyd, Id love to see a great howto post on that.
arossouw [11:14 AM]
I suppose the question is what is the advantage of using kerberos, and then deciding if its worth spending time on
sfrost [11:14 AM]
I just wrote it
^^^ see above
also wrote the advantage...
hunleyd [11:14 AM]
maybe i'll try this as a 10% project some day

4
db2.md
View File

@ -1,3 +1,3 @@
alter existing column type
alter existing column type
`ALTER TABLE RLARP.OSMFS ALTER COLUMN "ITER" SET DATA TYPE VARCHAR(500)`

View File

@ -1,11 +1,11 @@
HC Comp
* Ground up forecasting of sales, inventory, and operations
* Build sales database and analytics for the sales team synced with financials
* Develop detailed standard cost transaction ledger for production analytics syned with financials
* Develop Ad-Hoc consolidations and real-time financial statement logic
Forecasting
Building Dataset & Reports
Financial Statements
Custom Logic
HC Comp
* Ground up forecasting of sales, inventory, and operations
* Build sales database and analytics for the sales team synced with financials
* Develop detailed standard cost transaction ledger for production analytics syned with financials
* Develop Ad-Hoc consolidations and real-time financial statement logic
Forecasting
Building Dataset & Reports
Financial Statements
Custom Logic
Balance Sheet integrity111

40
git.md
View File

@ -1,21 +1,21 @@
Branches
============================================
### Adding Branches ###
* local: `git checkout -b <branch>`
* remote: `git push --set-upstream <remote> <branch>`
* track remote: `git checkout --track <origin>/<branch>`
### Deleting Branches ###
* local: `git branch -d <name>`
* remote: `git push -d <remote> <name>`
* realize remote deletes: `git remote prune <remote>`
### Non-Standard Activities ###
* merge only a single file into another branch `git checkout <branch> -- <file>`
* delete from repo and file system `git rm <file>`
Branches
============================================
### Adding Branches ###
* local: `git checkout -b <branch>`
* remote: `git push --set-upstream <remote> <branch>`
* track remote: `git checkout --track <origin>/<branch>`
### Deleting Branches ###
* local: `git branch -d <name>`
* remote: `git push -d <remote> <name>`
* realize remote deletes: `git remote prune <remote>`
### Non-Standard Activities ###
* merge only a single file into another branch `git checkout <branch> -- <file>`
* delete from repo and file system `git rm <file>`
* set current branch to track remote `git branch -u <origin>/<branch>`

View File

@ -1,29 +1,29 @@
setup for single sign on with [SSPI](https://wiki.postgresql.org/wiki/Configuring_for_single_sign-on_using_SSPI_on_Windows)
md5 hash is salted with username in front
Memory
=========================================================
see whats in the buffer cache with pg_buffercache
`CREATE EXTENSION pg_buffercache`
```
SELECT
c.relname,
COUNT(*) AS buffers
FROM
pg_class c
INNER JOIN pg_buffercache b ON
b.relfilenode = c.relfilenode
INNER JOIN pg_database d ON
( b.reldatabase = d.oid
AND d.datname = CURRENT_DATABASE())
GROUP BY
c.relname
ORDER BY
2 DESC
LIMIT 100;
```
setup for single sign on with [SSPI](https://wiki.postgresql.org/wiki/Configuring_for_single_sign-on_using_SSPI_on_Windows)
md5 hash is salted with username in front
Memory
=========================================================
see whats in the buffer cache with pg_buffercache
`CREATE EXTENSION pg_buffercache`
```
SELECT
c.relname,
COUNT(*) AS buffers
FROM
pg_class c
INNER JOIN pg_buffercache b ON
b.relfilenode = c.relfilenode
INNER JOIN pg_database d ON
( b.reldatabase = d.oid
AND d.datname = CURRENT_DATABASE())
GROUP BY
c.relname
ORDER BY
2 DESC
LIMIT 100;
```

79
vim.md Normal file
View File

@ -0,0 +1,79 @@
:Ex - use built in explorer to eplore at location
:colorscheme with autocomplete
:vs veritcale split
:sh horizontal split
:edit open a file
:ls list buffers
:b picka buffer
plugins
------------------------
Vundler
* install per below
* add to .vimrc `Plugin 'gmarik/Vundle.vim'` and run :PluginInstall
NERDtree
* add to .vimrc `Plugin 'scrooloose/nerdtree'` and run :PluginInstall
* call with :NERDtree
fugitive - git command in a split
* add to .vimrc `Plugin 'tpope/vim-fugitive'` and run :PluginInstall
* :Gdiff, :Gstatus etc.
powerline
* vim status and git status info
* add to .vimrc `Plugin 'Lokaltog/powerline', {'rtp': 'powerline/bindings/vim/'}` and run :PluginInstall
Vundler
---------------
git clone https://github.com/VundleVim/Vundle.vim.git ~/.vim/bundle/Vundle.vim
add the following to ~/.vimrc:
```
set nocompatible " be iMproved, required
filetype off " required
" set the runtime path to include Vundle and initialize
set rtp+=~/.vim/bundle/Vundle.vim
call vundle#begin()
" alternatively, pass a path where Vundle should install plugins
"call vundle#begin('~/some/path/here')
" let Vundle manage Vundle, required
Plugin 'VundleVim/Vundle.vim'
" The following are examples of different formats supported.
" Keep Plugin commands between vundle#begin/end.
" plugin on GitHub repo
Plugin 'tpope/vim-fugitive'
" plugin from http://vim-scripts.org/vim/scripts.html
" Plugin 'L9'
" Git plugin not hosted on GitHub
Plugin 'git://git.wincent.com/command-t.git'
" git repos on your local machine (i.e. when working on your own plugin)
Plugin 'file:///home/gmarik/path/to/plugin'
" The sparkup vim script is in a subdirectory of this repo called vim.
" Pass the path to set the runtimepath properly.
Plugin 'rstacruz/sparkup', {'rtp': 'vim/'}
" Install L9 and avoid a Naming conflict if you've already installed a
" different version somewhere else.
" Plugin 'ascenator/L9', {'name': 'newL9'}
" All of your Plugins must be added before the following line
call vundle#end() " required
filetype plugin indent on " required
" To ignore plugin indent changes, instead use:
"filetype plugin on
"
" Brief help
" :PluginList - lists configured plugins
" :PluginInstall - installs plugins; append `!` to update or just :PluginUpdate
" :PluginSearch foo - searches for foo; append `!` to refresh local cache
" :PluginClean - confirms removal of unused plugins; append `!` to auto-approve removal
"
" see :h vundle for more details or wiki for FAQ
" Put your non-Plugin stuff after this line
```