1.  net core 安装及运行配置

  • 安装

1)rpm -Uvh https://packages.microsoft.com/config/rhel/7/packages-microsoft-prod.rpm

2)yum update(一直Y下去)( 没最新版本操作)

3)yum install dotnet-sdk-2.2

  • .netcore 后台服务运行以及开机启动

1) vim /etc/systemd/system/rightsManage.service , 创建服务内容如下:

[Unit]
Description=权限管理服务

#该服务在什么时候启动,此处表示 系统日志之后
After=syslog.target

[Service]
ExecStart=/usr/bin/dotnet /zhangcun/rightsManage/ZhCun.RightsManage.dll

WorkingDirectory=/zhangcun/rightsManage/   # 运行的程序目录

Restart=always

SyslogIdentifier=dotnet core console

#Type 可选多种模式
Type=simple

[Install]
WantedBy=multi-user.target

2)  配置开机启动、重载、开始、停止、及状态

激活该service(设置开机自启动,disable 为关闭) : systemctl enable rightsManage.service

systemctl daemon-reload   (修改完文件后需操作)

systemctl start rightsManage --开启服务

systemctl status rightsManage -- 查看状态

systemctl stop rightsManage.service -- 停止服务

2. mysql  安装及配置

下载: wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm

安装: rpm -ivh mysql-community-release-el7-5.noarch.rpm

修改密码:

# mysql -u root -p  使用密码进入

# mysql> use mysql;

mysql>  update user set password=password('new password') where user='root';   修改密码
mysql>  flush privileges; --刷新生效

启动: service mysqld start  、停止:service mysqld stop 、重启:service mysqld restart

创建mysql远程访问用户

# mysql -p

mysql > GRANT ALL PRIVILEGES ON *.* TO '$username'@'%' IDENTIFIED BY '$password' WITH GRANT OPTION;

mysql > flush privileges;

修改mysql 默认端口:

打开配置文件   vim /etc/my.cnf  ,修改内容如下:

[mysqld]
port = 3306 #修改为你想要改的端口

重启mysql     service mysql restart

3.防火墙配置

  • systemctl status firewalld  防火墙状态 
  • systemctl start firewalld  开启防火墙
  • systemctl stop firewalld  关闭防火墙
  • systemctl reload firewalld   重载,增加完端口之后需操作
  • firewall-cmd --list-ports   防火墙开放列表
  • firewall-cmd --zone=public --add-port=80/tcp --permanent  开端口命令

命令含义:
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效

4. redis 部署及配置

Redis 安装 参考官网:http://www.redis.cn/download.html

下载最新版本:
1)wget http://download.redis.io/releases/redis-5.0.4.tar.gz
2)tar xzf redis-5.0.4.tar.gz
3)cd redis-5.0.4
5)make

6)更改默认端口、密码、绑定地址
  vim redis.conf

  port 6379 更改监听端口

  requirepass  foobared 将注释# 去掉,foobared 为密码

  bind 127.0.0.1 改为 0.0.0.0 (任意ip)用于网络内访问

daemonize yes   yes改为 后台运行

  关于 redies 事件通知的说明,参考:https://redis.io/topics/notifications

  notify-keyspace-events ""  默认空字符串为禁用空通知,关于Key过期通知可改为: notify-keyspace-events KEx (使用K或E 都可以实现,x过期)

    # K Keyspace events, published with __keyspace@<db>__ prefix.

      示例:PUBLISH __keyspace@0__:mykey expired 对 mykey 的过期事件订阅,对指定键的所有事件订阅为: __keyspace@0__:mykey*  订阅的消息(message)将返回 事件

      # E Keyevent events, published with __keyevent@<db>__ prefix.

        示例:PUBLISH __keyevent@0__:expired mykey 对 expired 事件进行订阅key为mykey(这两个例子结果是一样的),如果对指定事件的所有key进行订阅,则为:__keyevent@0__:*,订阅的消息(message)将返回 key

      #  x     Expired events (events generated every time a key expires)  过期时间事件

      # 其他启用事件可查看文档或配置文件说明

      程序中订阅可通过   __key*__:* 来测试,这样表示所有事件的所有key,但需要在channel 判断事件类型,根据事件类型获取

6)src/redis-server redis.conf 运行(在解压后的目录下运行) ,临时测试使用 ctrl + z , jobs , bg 等命令 进入后台

7)测试 redis-cli -h 地址 -p 端口 -a 密码
      或者登录后验证密码 auth 密码

8)增加服务,开机启动,参考上面的.net core 程序

关于服务配置文件:

[Service]
ExecStart=/redis所在目录/redis-5.0.4/src/redis-server /redis所在目录/redis-5.0.4/redis.conf --daemonize no
ExecStop=/redis所在目录redis所在目录/redis-5.0.4/src/redis-cli -p 6379 -a 【密码】 shutdown

5. 安装mssql2017

  参考官网: https://docs.microsoft.com/zh-cn/sql/linux/quickstart-install-connect-red-hat?view=sql-server-linux-2017

  官网介绍很详细

  1)curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo    (大小约181M)

  2)yum install -y mssql-server

  3)/opt/mssql/bin/mssql-conf setup   安装 ,我这里选择的 3 Express (免费),如果服务器配置够好,可以选择  2  Developer (免费,无生产许可)

  如果服务器内存不足2G,请移步这里: https://www.cnblogs.com/xtdhb/p/11357702.html

4)安装之后密码莫名其妙不对,重新执行 3) 重新配置即可;

使用 backup database 备份数据,需要给文件夹权限:chown -R mssql:mssql  /usr/local/databackup/

5. netcore 程序部署及常用问题

  • 有图片相关操作(图片验证码等),报错:Unable to load shared library 'gdiplus' or one of its dependencies.

解决:  yum install libgdiplus-devel

如果提示“没有可用的包”,否则忽略下面

    1)下载 epel-release-7-11.noarch.rpm , wget http://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/e/epel-release-7-11.noarch.rpm

2)rpm -Uvh epel-release*rpm

3)yum install libgdiplus

  • 设置linux为控制台中文

1)vim ~/.bashrc  最后加上如下内容:

#language
LANG=zh_CN.UTF-8
LANGUAGE=zh_CN.UTF-8

2)source ~/.bashrc

3)locale 查看

备注:中文乱码,检查安装中文包,检查远程工具(会话-终端-外观-字符编码)

  • 当部署完.net core 程序后,临时后台运行方法,ctrl + z 挂起后的后台与前台运行方法

运行程序,如:  dotnet  xxx.dll  后 ,快捷键 ctrl + z  挂起,程序进入挂起状态(暂停未运行)

1)jobs 显示当前暂停的进程

2)bg %N 使第N个任务在后台运行

3)fg %N 使第N个任务在前台运行

其它:默认bg,fg不带%N时表示对最后一个进程操作

2019.7.30  首次记录

2019.7.31 redis 部署、后台进程切换相关

2019.8.2  redis 过期事件配置

Linux Centos 7 下部署 .NetCore + MySql + Redis + mssql2007 部署过程的更多相关文章

  1. linux CentOS 安装 nginx+tomcat+java+mysql运行环境

    本文介绍了CentOS7 64 Java,Tomcat,MySQL,Maven热部署等服务器环境的搭建过程. 服务器: 已经将所需要的工具(Xshell,Xftp.FileZilla等sftp上传工具 ...

  2. Linux/centos/redhat下各种压缩解压缩方式详解

    1.zip命令 zip -r myfile.zip ./* 将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩子目录下所有文件. 2.unzip unzip -o -d ...

  3. Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因

    原文:Linux(CentOS)系统下安装好apache(httpd)服务后,其他电脑无法访问的原因 今天试了下在虚拟机上利用CentOS系统的yum命令安装好了httpd(apache2.4.6), ...

  4. 在云服务器 ECS Linux CentOS 7 下重启服务不再通过 service 操作,而是通过 systemctl 操作

    在云服务器 ECS Linux CentOS 7 下重启服务不再通过 service  操作,而是通过 systemctl 操作. 操作说明如下: 1. 查看 sshd 服务是否启动: 看到上述信息就 ...

  5. Linux/CentOS环境下如何安装和配置PhantomJS工作环境

    PhantomJS 是一个基于WebKit的服务器端 JavaScript API.它全面支持web而不需浏览器支持,其快速,原生支持各种Web标准: DOM 处理, CSS 选择器, JSON, C ...

  6. Linux之VMWare下Centos7的三种网络配置过程

    Linux之VMWare下Centos7的三种网络配置过程 环境: 虚拟软件:VMWare 14.0 客户机:windows 10 虚拟机:centos 7 VMware三种网络连接方式 Bridge ...

  7. Linux的VMWare下Centos7的三种网络配置过程(网络二)

    Linux之VMWare下Centos7的三种网络配置过程 环境:虚拟软件:VMWare 14.0客户机:windows 10虚拟机:centos 7 VMware三种网络连接方式 Bridge(桥接 ...

  8. Linux下安装python,mysql,redis

    linux 安装Python3 1.python下载 请在终端输入如下命令: cd /home wget http://cdn.npm.taobao.org/dist/python/3.6.5/Pyt ...

  9. linux CentOS 系统下如何将php和mysql命令加入到环境变量中

    在Linux CentOS系统上安装完php和MySQL后,为了使用方便,需要将php和mysql命令加到系统命令中,如果在没有添加到环境变量之前,执行“php -v”命令查看当前php版本信息时时, ...

随机推荐

  1. Retrofit与RXJava整合(转)

    Retrofit 除了提供了传统的 Callback 形式的 API,还有 RxJava 版本的 Observable 形式 API.下面我用对比的方式来介绍 Retrofit 的 RxJava 版 ...

  2. Android】Retrofit网络请求参数注解,@Path、@Query、@QueryMap...(转)

    对Retrofit已经使用了一点时间了,是时候归纳一下各种网络请求的service了. 下面分为GET.POST.DELETE还有PUT的请求,说明@Path.@Query.@QueryMap.@Bo ...

  3. 基于vue的移动端web音乐播放器

    声明 以下只是学习完慕课网huangyi老师实战视频课程的笔记内容,仅供个人参考学习使用.如果对Vue2.0实战高级-开发移动端音乐WebApp感兴趣的话,请移步这里:https://coding.i ...

  4. LOJ6437 PKUSC2018 PKUSC

    带劲的计算几何[这一定是我WC之前开的最后一道计几!!! 每个点画个圆然后看一下交点 然后判断是多边形内还是多边形外 这个就是取圆上中点然后射线法 eps我1e-8才过 不知道为啥有的人说只能开1e- ...

  5. django model的get和filter方法的区别

    django的get方法: 1django的get方法是从数据库的取得一个匹配的结果,返回一个对象,如果记录不存在的话,它会报错. 2如果你用django的get去取得关联表的数据的话,而关键表的数据 ...

  6. 【leetcode】883. Projection Area of 3D Shapes

    题目如下: 解题思路:分别求出所有立方体的个数,各行的最大值之和,各列的最大值之和.三者相加即为答案. 代码如下: class Solution(object): def projectionArea ...

  7. 如何在pycharm中进入shell脚本调试代码

    首先在Teramal终端 输入python manage.py shell 然后进行下图操作来调试代码

  8. 输入流之顶层抽象InputStream

    该类是所有二进制输入流的的抽象父类 类中主要方法解释说明如下 (1)public abstract int read() throws IOException; 该方法是从输入流中读取下一个字节,返回 ...

  9. 【HDU6609】Find the answer【线段树】

    题目大意:给你一个序列,对于每个i,你可以选择1~i-1中任意多的数并将它删去,剩余的数(包括i)∑≤m,问对于每个i最少删几个数可以达到要求 题解: 考虑朴素的思想,对于每个i,我只需要删去最大的若 ...

  10. delphi 异形窗体可半透明

    unit xDrawForm; interface uses Windows, Messages, SysUtils, Classes, Controls, Forms, Menus, Graphic ...