• centos7安装msSQLserver数据库


    数据库安装:
    sudo curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2019.repo     --将SQL2019源更新到yum库中

    脱机安装:适用于网络情况不好的地方
    mssql-server_versionnumber.x86_64.rpm
    sudo yum localinstall mssql-server-15.0.4249.2-1.x86_64.rpm
    --这里的mssql-server_versionnumber.x86_64.rpm包我用的是mssql-server-15.0.4249.2-1.x86_64.rpm
    资源放到:https://download.csdn.net/download/leonnew/86507024
    或者rpm -qpR mssql-server-15.0.4249.2-1.x86_64.rpm

    安装工具
    msodbcsql-.rpm
    https://download.csdn.net/download/leonnew/86507068
    sudo yum localinstall msodbcsql18-18.1.1.1-1.x86_64.rpm
    mssql-tools-.rpm
    https://download.csdn.net/download/leonnew/86507072
    sudo yum localinstall mssql-tools18-18.1.1.1-1.x86_64.rpm
    或者
    rpm -qpR msodbcsql18-18.1.1.1-1.x86_64.rpm
    rpm -qpRmssql-tools18-18.1.1.1-1.x86_64.rpm


    sudo yum makecache     --更新系统缓存

    sudo yum install -y mssql-server     --安装数据库

    rpm -qi mssql-server        --查询安装包信息

    sudo /opt/mssql/bin/mssql-conf setup         --进行数据库配置

    Choose an edition of SQL Server: 
      1) Evaluation (free, no production use rights, 180-day limit) 
      2) Developer (free, no production use rights) 
      3) Express (free) --注意最大可达10G
      4) Web (PAID) 
      5) Standard (PAID) 
      6) Enterprise (PAID) 
      7) Enterprise Core (PAID) 
      8) I bought a license through a retail sales channel and have a product key to enter.

    选择2-Developer(免费)

    补充内容:

    关于2017版本官方解释

    https://www.microsoft.com/zh-cn/sql-server/sql-server-2017?rtc=1

    SQL Server 2019 各版本区别

    规模限制

    接受许可协议
    The license terms for this product can be found in 
    /usr/share/doc/mssql-server or downloaded from: 
    https://go.microsoft.com/fwlink/?LinkId=855862&clcid=0x409 
     
    The privacy statement can be viewed at: 
    https://go.microsoft.com/fwlink/?LinkId=853010&clcid=0x409 
     
    Do you accept the license terms? [Yes/No]:Yes 


    设置管理员密码
    Enter the SQL Server system administrator password:  
    Confirm the SQL Server system administrator password: 
    Configuring SQL Server... 
     
    sqlservr: This program requires a machine with at least 2000 megabytes of memory. 
    /opt/mssql/bin/sqlservr: This program requires a machine with at least 2000 megabytes of memory. 
     
    Initial setup of Microsoft SQL Server failed. Please consult the ERRORLOG 
    in /var/opt/mssql/log for more information. 

    使用 unixODBC 开发包安装 mssql-tools
    sudo curl -o /etc/yum.repos.d/msprod.repo https://packages.microsoft.com/config/rhel/7/prod.repo 
    sudo yum -y install mssql-tools unixODBC-devel 

    PS:centos7有可能安装失败。直接用rpm -i安装离线包先装msodbcsql18再装msql-tools就可以了

    启动 mssql-server 服务
    sudo systemctl start mssql-server 
    sudo systemctl enable mssql-server 

    sudo systemctl status mssql-server

    PS: 如果安装到虚拟机里面内存最低2G,我在这里启动不了找了好久原因,最后发现是这个问题。

    添加/opt/mssql/bin/ 到您的 $PATH 变量:
    echo 'export PATH=$PATH:/opt/mssql/bin:/opt/mssql-tools/bin' | sudo tee /etc/profile.d/mssql.sh 
    交互式会话环境变量添加
    echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
    非交互式会话环境变量添加
    echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bashrc
    source ~/.bashrc

    PS:centos7使用离线安装包环境变量是/opt/mssql-tools18/bin/

    获取文件以在当前 shell 会话中开始使用 MS SQL 可执行二进制文件
    source /etc/profile.d/mssql.sh 

    防火墙规则
    sudo  firewall-cmd --add-port=1433/tcp --permanent 
    sudo  firewall-cmd --reload 

    测试 验证连接SQL Server

    PS:这里有可能连接出现问题,
    Sqlcmd: Error: Microsoft ODBC Driver 18 for SQL Server : SSL Provider: [error:1416F086:SSL routines:tls_process_server_certificate:certificate verify failed:self signed certificate].
    Sqlcmd: Error: Microsoft ODBC Driver 18 for SQL Server : Client unable to establish connection.
    是因为客户端没有信任服务器证书不能进行验证
    可以加参数-C跳过验证,等同于ADO.NET 选项TRUSTSERVERCERTIFICATE = true


    $ sqlcmd -S localhost -U SA 
    1> select name from sysusers; 
    2> go 

    创建测试库

    PS:默认创建的库排序规则有点问题,这里补充一下知识点
    1.排序规则
    Chinese_PRC_CS_AS  中文区分大小写
    Chinese_PRC_CI_AS   中文不区分大小写
     
    2.更改数据库默认排序规则
    ALTER   DATABASE   db701d7f15901a4dc2811ca2800087b4b9 
    COLLATE   Chinese_PRC_CI_AS

    PS:再补充一个创建数据库的时候兼容级别的问题

    Product数据库引擎版本兼容级别指定支持的兼容级别值
    SQL Server 2019 预览15150150、140、130、120、110、100
    SQL Server 2017 (14.x)14140140、130、120、110、100
    Azure SQL Database 逻辑服务器12130150、140、130、120、110、100
    Azure SQL Database 托管实例12130150、140、130、120、110、100
    SQL Server 2016 (13.x)13130130、120、110、100
    SQL Server 2014 (12.x)12120120、110、100
    SQL Server 2012 (11.x)11110110、100、90
    SQL Server 2008 R210.5100100、90、80
    SQL Server 200810100100、90、80
    SQL Server 200599090、80
    SQL Server 200088080

    # Create new 
    CREATE DATABASE testDB 
    SELECT Name from sys.Databases 
    GO 
    USE testDB 
    CREATE TABLE Inventory (id INT, name NVARCHAR(50), quantity INT) 
    INSERT INTO Inventory VALUES (1, 'banana', 150); 
    INSERT INTO Inventory VALUES (2, 'orange', 154); 
    GO 
    SELECT * FROM Inventory LIMIT 1; 
    或者
    SELECT * FROM dbo.Inventory
    WHERE quantity > 152;

    显示库
    1> select name,database_id from sys.databases; 
    2> go 

    删除库
    1> drop database testDB; 
    2> go 


    卸载SQL server
    sudo yum remove mssql-server
    sudo rm -rf /var/opt/mssql/

  • 相关阅读:
    32个关键字详解①(C语言)
    javacv 基础04-读取mp4,avi等视频文件并截图保存图片到本地
    数据库的备份和恢复
    SQL还是NoSQL?架构师必备选型技能
    项目性能优化 - 并发编程合并文章详情页的 HTTP 请求次数
    java实现备忘录模式
    TSINGSEE青犀AI智能分析+视频监控工业园区周界安全防范方案
    tree型数组平铺,一维数组结构tree型
    [架构之路-232]:目标系统 - 纵向分层 - 操作系统 - 数据存储:文件系统存储方法汇总
    Python解决多个服务线程/进程重复运行定时任务的问题
  • 原文地址:https://blog.csdn.net/leonnew/article/details/126662980