Oracle数据库自增主键

create table TEAM_MAJOR_WORK
(
  pkid                NUMBER(7) not null,
  team_no            VARCHAR2(16) not null,
  ymonth              VARCHAR2(6) not null,
  iwork_plan             CLOB,
  iwork_desc             CLOB,
  iwork_result        CLOB,
  teamld_evluate      CLOB,
  depld_evluate      CLOB,
  cr_date             DATE default sysdate not null
);



--创建seq
create sequence TWORK_ID_SEQ start with 100000 increment by 1 maxvalue 999999;



--创建触发器
create or replace trigger TR_MAJOR_WORK
  before insert on TEAM_MAJOR_WORK
  for each row
  when (new.pkid is null)
begin
  select TWORK_ID_SEQ.NEXTVAL into:new.pkid from dual;
end;

--查询触发器
select * from all_triggers tr where tr.TRIGGER_NAME='TR_MAJOR_WORK';

WIN10子系统开启SSH

Win10的Linux子系统是真的不错的一个功能,默认不开启SSH服务,本篇打开SSH服务。

1)安装SSH

apt-get install openssh-server

2) 备份sshd配置文件

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak

修改内容

Port 23 # 端口改为23,22端口已被占用
ListenAddress 0.0.0.0 # 取消注释
#StrictModes yes # 注释
PasswordAuthentication yes # 允许密码登录

3)启动SSH

service ssh start

如果提示sshd error: could not load host key,则用下面的命令重新生成

sudo rm /etc/ssh/ssh*key
dpkg-reconfigure openssh-server

Mysql修改默认root密码

1)、use mysql;                   #连接到mysql数据库
2)、update mysql.user set authentication_string=password('123456') where user='root' and Host ='localhost';    #修改密码123456是密码
3)、update user set  plugin="mysql_native_password";     
4)、flush privileges;
5)、quit;

Ubuntu安装RDP桌面

1) 安装相关软件包

sudo apt install tightvncserver xrdp
sudo apt install xubuntu-desktop
echo xfce4-session >~/.xsession

2) sudo vim /etc/xrdp/startwm.sh

在 test -x /etc/X11/Xsession && exec /etc/X11/Xsession 上方添加

xfce4-session

3) sudo vim /etc/X11/Xsession

同样添加

xfce4-session

4) 最后,重启服务

sudo systemctl restart xrdp.service 

Ubuntu安装Mate桌面 并开启X2GO

0) 首先安装Mate桌面,这里就偷个懒,把所有的包都装上。

sudo apt-get install ubuntu-mate-*

1) 漫长的等待之后,重启一下

sudo add-apt-repository ppa:x2go/stable
sudo apt-get update
sudo apt-get install x2goserver x2goserver-xsession

到此为止就已经安装好MATE桌面并开启X2GO了,直接连接就可以了

node.js 安装 npm 并管理 npm 版本

更新npm到最新版本

npm install npm@latest -g.

查看当前npm版本

npm -v

在卸载gitlab然后再次安装执行sudo gitlab-ctl reconfigure的时候往往会出现:ruby_block[supervise_redis_sleep] action run,会一直卡无法往下进行!

解决方案:

1、按住CTRL+C强制结束;
2、运行:sudo systemctl restart gitlab-runsvdir;
3、再次执行:sudo gitlab-ctl reconfigure

nginx配置动态域名解析

resolver 114.114.114.114;
 
server {
    location / {
        set $servers github.com;
        proxy_pass http://$servers;
    }
}

Nginx对其中配置的代理域名,仅在程序启动的时候解析一次,把IP缓存下来,导致IP变化时,出现502 Bad Gateway的报错。此写法可以指定解析时使用的DNS,但是当IP动态变化之后,依然无法正常解析,故实际测试之后,我使用的是这个方法:

增加一条crontab,定时重载NGINX,重新获取IP地址

*/10 *  * * * /usr/sbin/nginx -s reload

SQL中替换函数

我迁移wordpress到临时服务器上时遇到的问题,老的域名为home.daijiyu.cn,新的域名为s.daijiyu.cn,迁移时使用自动备份插件仅能恢复出原来的数据库内容,链接和图片的地址还是原来的,导致大量图片不显示。解决方案是使用SQL语句对数据库中文章里的图片地址进行替换,替换语句如下:

update `wp_posts` set `post_content`=replace(post_content,'home.daijiyu.cn','s.daijiyu.cn')