CentOS7安装Sql Server、apache2和php72及MSSQL驱动
CentOS7安装apache2和php72及MSSQL驱动
CentOS7版本:
[root@localhost ~]# cat /etc/redhat-release
CentOS Linux release 7.6.1810 (Core)
安装httpd
[root@localhost ~]# yum install httpd
启动httpd
[root@localhost ~]# service httpd start
此时可以访问默认网站,默认路径为:
/var/www/html
设置为开机启动
[root@localhost ~]# systemctl enable httpd
安装PHP7.2
[root@localhost ~]# yum install epel-release –y
[root@localhost ~]# rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
清除历史版本
[root@localhost ~]# yum -y remove php*
安装扩展包
[root@localhost ~]# yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel
安装豪华扩展包
[root@localhost ~]# yum -y install php72w php72w-cli php72w-fpm php72w-common php72w-devel php72w-embedded php72w-gd php72w-mbstring php72w-mysqlnd php72w-opcache php72w-pdo php72w-xml
启动PHP
[root@localhost ~]# systemctl enable php-fpm.service
[root@localhost ~]# systemctl start php-fpm.service
测试
[root@localhost ~]# cd /var/www/html
[root@localhost html]# ls
[root@localhost html]# vi index.php
[root@localhost html]# service httpd restart
Index.php内容:
<?php
Phpinfo();
可以正常访问PHP页面了。
安装编译环境
[root@localhost freetds-1.1.15]# yum install gcc g++
安装软件的时候,提示make: command not found
Centos中无法使用make,make install,命令 make: command not found
make是gcc的编译器,VPS买来必定要安装
安装:
yum -y install gcc automake autoconf libtool make
安装g++:
yum install gcc gcc-c++
安装文件工具
[root@localhost ~]# yum install lrzsz
安装freetds
[root@localhost ~]# yum install wget
[root@localhost ~]# wget ftp://ftp.freetds.org/pub/freetds/stable/freetds-patched.tar.gz
[root@localhost ~]# tar -zxvf freetds-patched.tar.gz
[root@localhost ~]# cd freetds-*
[root@localhost freetds-1.1.15]# ./configure --prefix=/usr/local/freetds --with-tdsver=auto --enable-msdblib --with-gnu-ld --enable-shared --enable-static
[root@localhost ~]# make && make install
安装pdo_dblib
[root@localhost ~]# wget http://cn2.php.net/distributions/php-7.2.21.tar.gz
下载比较慢,可下载后上传
[root@localhost ~]# tar -zxvf php-7.2.21.tar.gz
[root@localhost ~]# cd php-*/ext/pdo_dblib
[root@localhost pdo_dblib]# /usr/local/php/bin/phpize
[root@localhost pdo_dblib]# /usr/bin/phpize
[root@localhost pdo_dblib]# ./configure --with-php-config=/usr/bin/php-config --with-pdo-dblib=/usr/local/freetds
[root@localhost pdo_dblib]# make && make install
配置PHP
在/etc/php.d/目录下建立文件
[root@localhost php.d]# vi pdo_dblib.ini
; Enable pdo_dblib extension module
extension=pdo_dblib.so
此时可以使用dblib来访问SQL Server了。
加入微软源
[root@localhost ~]# curl https://packages.microsoft.com/config/rhel/7/prod.repo > /etc/yum.repos.d/mssqlrelease.repo
[root@localhost ~]# yum install msodbcsql mssql-tools unixODBC-devel
[root@localhost ~]# wget https://pecl.php.net/get/ pdo_sqlsrv-5.6.1.tgz
[root@localhost ~]# tar -zxvf pdo_sqlsrv-5.6.1.tgz
[root@localhost ~]# cd pdo_sqlsrv-5.6.1
[root@localhost pdo_sqlsrv-5.6.1]# phpize
[root@localhost pdo_sqlsrv-5.6.1]# ./configure --with-php-config=/usr/bin/php-config
出错,gcc和g++要这样安装:
[root@localhost pdo_sqlsrv-5.6.1]# yum install gcc-c++
继续编译安装
[root@localhost pdo_dblib]# make && make install
在/etc/php.d/目录下建立文件
[root@localhost php.d]# vi pdo_sqlsrv.ini
; Enable pdo_sqlsrv extension module
extension=pdo_sqlsrv.so
测试ThinkPHP
上传至系统至
/var/www/tp5
修改/etc/httpd/conf/httpd.conf
将DocumentRoot
"/var/www/html"修改为DocumentRoot "/var/www/tp5/public"
将<Directory
"/var/www/html">修改为<Directory "/var/www/tp5">
修改数据库连接database.php
return [
// 数据库类型
'type' => 'Sqlsrv',
// 服务器地址
'hostname' => '127.0.0.1',
// 数据库名
'database' => 'BokMES',
// 用户名
'username' => 'sa',
// 密码
'password' => ',
// 端口
'hostport' => '',
// 连接dsn
'dsn' => '',
// 数据库连接参数
'params' => [],
// 数据库编码默认采用utf8
'charset' => 'gbk',
测试
http://192.168.1.90/phpinfo.php
http://192.168.1.90/index.php/Index/index/myhello
通过!
ThinkPHP
URL重写
可以通过URL重写隐藏应用的入口文件index.php(也可以是其它的入口文件,但URL重写通常只能设置一个入口文件),下面是相关服务器的配置参考:
[ Apache ]
httpd.conf配置文件中加载了mod_rewrite.so模块 (这个没有找到,但不影响)AllowOverride None将None改为All- 把下面的内容保存为
.htaccess文件放到应用入口文件的同级目录下
<IfModule mod_rewrite.c>
Options+FollowSymlinks-Multiviews
RewriteEngine On
RewriteCond%{REQUEST_FILENAME}!-d
RewriteCond%{REQUEST_FILENAME}!-f
RewriteRule^(.*)$ index.php/$1[QSA,PT,L]
</IfModule>
然后URL可以直接这样写了:
http://192.168.1.90/index.php/index/Index/index
安装SQL Server
[root@localhost php.d]# curl -o /etc/yum.repos.d/mssql-server.repo https://packages.microsoft.com/config/rhel/7/mssql-server-2017.repo
[root@localhost php.d]# yum install -y mssql-server
[root@localhost php.d]# /opt/mssql/bin/mssql-conf setup
然后测试从windows sql server 2008 R2迁移至Linux SQL Server 2017下。
首先在windows下备份数据库,比如是a.bak,将备份文件上传至Linux。Linux默认数据路径是/var/opt/mssql/data。然后在Linux下运行命令:
RESTORE DATABASE newdbname FROM DISK = '/var/opt/mssql/data/a.bak'
WITH
MOVE 'db1' TO '/var/opt/mssql/data/newdb.mdf',
MOVE 'db1_log' TO '/var/opt/mssql/data/newdb_log.ldf', STATS = 1, REPLACE, RECOVERY
此处注意,newdbname为新创建的数据库名字,而db1和db2_log为原数据库中的逻辑数据文件的名字。
设置防火墙:
sudo firewall-cmd --zone=public --add-port=1433/tcp --permanent
sudo firewall-cmd --reload
CentOS7防火墙相关命令:
//临时关闭
systemctl stop firewalld
//禁止开机启动
systemctl disable firewalld
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
恢复成功,然后可以用SSMS或navicat或Azure Data Studio等工具正常连接数据库使用了。
安装mssql-tools:
添加源:
curl https://packages.microsoft.com/config/rhel/7/prod.repo >
/etc/yum.repos.d/msprod.repo
安装:
yum install mssql-tools unixODBC-devel
添加登录会话访问路径:
echo 'export
PATH="$PATH:/opt/mssql-tools/bin"' >> ~/.bash_profile
source ~/.bash_profile
交互式/非登录会话:
echo 'export PATH="$PATH:/opt/mssql-tools/bin"' >>
~/.bashrc
source ~/.bashrc
Ubuntu 1904下安装会出现错误提示:
The following packages have unmet dependencies:
mssql-server : Depends: libjemalloc1 but it is not installable
Depends: libssl1.0.0 but it is not installable
需要下载安装下面的文件:
wget http://ftp.osuosl.org/pub/ubuntu/pool/universe/j/jemalloc/libjemalloc1_3.6.0-11_amd64.deb
然后安装
sudo dpkg -i libssl1.0.0_1.0.1t-1+deb8u11_amd64.deb
sudo dpkg -i libjemalloc1_3.6.0-11_amd64.deb
再安装SQL Server就可以了。
CentOS7安装Sql Server、apache2和php72及MSSQL驱动的更多相关文章
- CentOS随笔 - 5.CentOS7安装Sql Server 2017
前言 转帖请注明出处: http://www.cnblogs.com/Troy-Lv5/ 开发环境嘛, 作为.Net系Sql Server那是必备的. 听过Sql server可以安装在Linux上了 ...
- CentOS7脱机安装SQL Server 2017
SQL Server on Linux也发布一段时间了,官方上支持Red Hat, SUSE, Ubuntu.手上没有以上Linux版本,选用了与Red Hat最接近的CentOS7.4来进行安装和测 ...
- CentOS7.5脱机安装SQL Server 2017(NEW)
发现搜到的都是在线下载安装的,都是只安装了mssql-server服务,没有mssql-server-agent服务.还以为linux下mssql没有agent服务呢.一番测试发现可以脱机安装,但是能 ...
- centos7.x中安装SQL Server
本文内容是采集的好几位博主的博文进行的一个整合,内容更为精准和详尽,以下是我参照的几篇博文地址: 微软官方文档:https://docs.microsoft.com/zh-cn/sql/linux/s ...
- 在Azure虚拟机上安装SQL server
Azure虽然向用户提供SQL paas服务,但是大多数用户还是习惯在用虚拟机自己搭建SQL server,这样的好处是便于后期最大化的扩展,所以鉴于这些情况,所以觉得有必要写这篇博客. 首先,我们要 ...
- 阿里云ECS服务器Centos中安装SQL Server(破解内存限制)
前言 前段时间赶上阿里云618活动入手了一个低配的Linux服务器,供自己学习使用,在安装SQL Server中遇到了很多小问题,查阅很多博客结合自身遇到的问题做个总结. 安装过程 1.下载阿里云在线 ...
- 自动化安装SQL Server+SP就那么简单
随着业务.企业规模的日益壮大,DB的数量也在不断增多,配置一台新增DB,从服务器的参数配置,磁盘阵列规划,DB安装部署,DB参数调优等等一列步骤下来,手工操作的效率变得越来越低,因为我负责的数据库近些 ...
- Win7 安装SQL SERVER 2012需要SP1补丁
在操作系统Win7上安装SQL Server 2012时,报如下错误: 也就是说SQL Server 2012如要要安装在Windows 7 上,则至少需要安装SP1补丁.否则就会弹出上面提示信息.关 ...
- win8安装SQL Server 2005问题解决方法
win8安装SQL Server 2005问题解决方法 1.正常安装任一版本的SQL Server 2005(最好安装企业版). 2.安装到SqlServer服务的时候提示启动服务失败(提示重试的时候 ...
随机推荐
- python json dumps与loads
json.dumps() 是将一个Python数据结构转换为一个JSON编码的字符串 json.loads() 是将一个JSON编码的字符串转换为一个Python数据结构 一般要求当要字符串通过l ...
- FFmpeg Windows下安装与测试
FFmpeg 简介 FFmpeg的名称来自MPEG视频编码标准,前面的"FF"代表"Fast Forward",FFmpeg是一套可以用来记录.转换数字音频.视 ...
- Nginx 配置及参数详解
Nginx 配置及参数详解 Nginx Location 指令语法 如下就是常用的 location 配置的语法格式,其中modifier是可选的,location_match就是制定 URI 应该去 ...
- 【转】大众点评Cat--架构分析
https://blog.csdn.net/szwandcj/article/details/51025669 Cat功能强大且多,光日志的报表和图表分析就有十几种,但文档却很少,寥寥无几找到一些粒度 ...
- HDU3572 Task Schedule(最大流+构图思维)
题意: 有N个任务M个机器,给每个任务i完成所花费的时间Pi且每个任务要在第Si天后开始,在第Ei天前结束,保证任务在(S,E)之间一定能完成. 每个机器在一天里只能运行一个任务,一个任务可以在中途更 ...
- python中requests库get方法带参数请求
起因是想爬五等分的花嫁的漫画.这是其中的一个坑 先上代码 data={ 'cid':567464, , 'key':'', 'language':1, 'gtk':6, '_cid':567464, ...
- 洛谷【P1498】:南蛮图腾(分治算法)
传送门 题目描述就不用看了,直接上样例就行: 输入样例#1: 2 输出样例#1: /\ /__\ /\ /\ /__\/__\ 输入样例#2: 3 输出样例#2: /\ /__\ /\ /\ /__\ ...
- 跑起来JEE论坛、商城和网站的经验总结
前言:昨天我们老大给我分配了几个任务,让我把几个公司的项目运行起来跑一下,几个项目都是JEE上开源的,三个项目,一个网站内容系统.一个BBS论坛.一个jspgou商城,这三个都是开源的,倒腾了两天,今 ...
- 浏览器绘图模型的解释:renderObject、renderlayer
先来看这幅经典的图: https://juejin.im/entry/590801780ce46300617c89b8 renderObject相当于iOS 的view renderlayer完成了一 ...
- 关于maven导入工程pom文件报错问题及解决
pom文件头报错 1.导入maven文件,经常遇到表头出错问题.报错:Failure to transfer org.apache.maven.shared:maven-filtering:pom:1 ...