Ubuntu10.04上编译安装部署Mono2.10.8+Nginx1.0.11+MySQL5.5.20实战

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,高可用系列 2核4GB
简介:

上一篇关于mono的是将一个小的系统移植体验,这次折腾了4天把这个小的系统部署到线上(国外的vps)。vps上安装了Ubuntu10.04的服务器版本,意味着是非常纯净的。而我又想都用最新版的环境,所以几乎全部编译安装mono2.10.8 Nginx1.0.11 MySQL5.5.20.现在把折腾的过程跟大家分享下,希望给那些对mono充满好感的朋友一点帮助,我折腾过了,希望大家不用再折腾了,而是比较顺利的完成整个过程。

一,准备工作

执行
sudo apt-get install build-essential  
sudo apt-get install libncurses5 libncurses5-dev
sudo apt-get install pkg-config
重新安装下vim 执行 sudo apt-get remove vim-common  sudo apt-get install vim

ps:整个安装编译过程会重复如下几个操作:

1.wget(下载相关的tar.gz或bz、bz2包),
2.tar jvxf(解压bz后缀的),zvxf(解压.gz后缀),xf也行,只不过解压过程不会显示详情。你可以参考这里了解更多
3.cd 进入解压后的目录,执行./configure或者是./config
4.make 编译
5.make install安装

二,安装Nginx1.0.11

1.安装pcre openssl zlib 
2.wget http://nginx.org/download/nginx-1.0.11.tar.gz
3.tar zvxf nginx-1.0.11.tar.gz  
4.cd nginx-1.0.11
5../configure 没有错误则执行make  接着make install (./configure过程中如果提示需要什么包的话,wget然后编译安装)

三,安装Mono 2.10.8

1.安装GNU M4(方法同上) bison gettext
2.wget http://download.mono-project.com/sources/mono/mono-2.10.8.tar.bz2
3.tar jvxf mono-2.10.8.tar.bz2
4.cd mono-2.10.8
5../configure    make    make install

四,安装Fastcgi-mono-server4

1.这个是包含在xsp里面的,所以我们要安装就是xsp
2.同样的方法安装编译wget http://download.mono-project.com/sources/xsp/xsp-2.10.2.tar.bz2

五,安装MySQL

1.安装Mysql的过程,请大家参考这这两篇文章(我建议执行./configure不要跟任何参数,全部默认安装)。文章连接如下:
http://blog.csdn.net/robertaqi/article/details/6099576    http://www.linuxso.com/sql/16838.html
当cmake执行报错了要记得清除下,第二个链接里面有提到
按照上面的链接文章操作应该可以顺利安装

六,解决MySQL中文乱码

参考这里http://guichina.blog.51cto.com/2001125/724939

七,设置Nginx,Fastcgi-mono-server自动启动

Nginx参考:http://www.linuxidc.com/Linux/2011-10/45735.htm
Fastcgi-mono-server参考:http://yojimbo87.github.com/2010/03/14/mono-startup-script.html

八,到这里配置应该就结束了,你可以参考我前面的文章配置你的程序。

运行时可能会出现如下"server /"的异常,按照提示修改Web.config文件,添加<customErrors mode="off"></customErrors>,

之后运行可能会抛出gdiplus.dll为找到的异常。

可以参考这里安装http://www.jiamaocode.com/Conts/2011/03/06/1741/1741.html
之后仍然可能报错,请参考这里http://www.mono-project.com/DllNotFoundException

安装好了libdgiplus以后,运行程序报了MySQL.Data.dll没有找到,后来发现bin里面没有,我是在DAL里面建了一个libs文件夹,里面放了MySql.Data.dll。后面我直接放到了bin里面,然后再引用,就行了。

到这里程序应该是可以正常启动了,折腾了4天终于完成上线运行,这里感谢飞飞鱼对我指导和帮助。如果你在配置的过程中有什么问题,欢迎留言交流。

本文转自Rt-张雪飞博客园博客,原文链接http://www.cnblogs.com/mszhangxuefei/archive/2012/01/19/mono_3.html如需转载请自行联系原作者


张雪飞

相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
5天前
|
SQL Java 关系型数据库
MySQL原理简介—3.生产环境的部署压测
本文介绍了Java系统和数据库在高并发场景下的压测要点: 1. 普通系统在4核8G机器上每秒能处理几百个请求 2. 高并发下数据库建议使用8核16G或更高配置的机器 3. 数据库部署后需进行基准压测,以评估其最大承载能力 4. QPS和TPS的区别及重要性 5. 压测时需关注IOPS、吞吐量、延迟 6. 除了QPS和TPS,还需监控CPU、内存、磁盘IO、网络带宽 7. 影响每秒可处理并发请求数的因素包括线程数、CPU、内存、磁盘IO和网络带宽 8. Sysbench是数据库压测工具,可构造测试数据并模拟高并发场景 9. 在增加线程数量的同时,必须观察机器的性能,确保各硬件负载在合理范围
109 72
|
15天前
|
存储 关系型数据库 MySQL
美团面试:MySQL为什么 不用 Docker部署?
45岁老架构师尼恩在读者交流群中分享了关于“MySQL为什么不推荐使用Docker部署”的深入分析。通过系统化的梳理,尼恩帮助读者理解为何大型MySQL数据库通常不使用Docker部署,主要涉及性能、管理复杂度和稳定性等方面的考量。文章详细解释了有状态容器的特点、Docker的资源隔离问题以及磁盘IO性能损耗,并提供了小型MySQL使用Docker的最佳实践。此外,尼恩还介绍了Share Nothing架构的优势及其应用场景,强调了配置管理和数据持久化的挑战。最后,尼恩建议读者参考《尼恩Java面试宝典PDF》以提升技术能力,更好地应对面试中的难题。
|
12天前
|
Ubuntu 开发工具 git
Ubuntu编译ffmpeg解决错误:ERROR: avisynth/avisynth_c.h not found
通过本文的详细指导,您可以顺利地在Ubuntu系统上配置和编译FFmpeg,并解决Avisynth头文件缺失的问题。
71 27
|
1月前
|
Ubuntu 计算机视觉 C++
Ubuntu系统下编译OpenCV4.8源码
通过上述步骤,你可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使你能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
79 43
|
30天前
|
Ubuntu 计算机视觉 C++
Ubuntu系统下编译OpenCV4.8源码
通过上述步骤,你可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使你能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
68 30
|
27天前
|
前端开发 应用服务中间件 nginx
docker安装nginx,前端项目运行
通过上述步骤,你可以轻松地在Docker中部署Nginx并运行前端项目。这种方法不仅简化了部署流程,还确保了环境的一致性,提高了开发和运维的效率。确保按步骤操作,并根据项目的具体需求进行相应的配置调整。
110 25
|
27天前
|
Ubuntu
Ubuntu20.04 编译安装FFmpeg,出错分析以及解决方案
通过上述步骤,可以在 Ubuntu 20.04 上成功编译和安装 FFmpeg。如果遇到问题,可以通过检查依赖包的安装情况以及 `config.log` 文件来解决。掌握这些技巧和解决方案,可以有效地解决编译过程中遇到的各种问题,提高安装成功率。
58 13
|
1月前
|
Ubuntu 计算机视觉 C++
Ubuntu系统下编译OpenCV4.8源码
通过上述步骤,你可以在Ubuntu系统上成功编译并安装OpenCV 4.8。这种方法不仅使你能够定制OpenCV的功能,还可以优化性能以满足特定需求。确保按照每一步进行操作,以避免常见的编译问题。
36 12
|
1月前
|
SQL 关系型数据库 MySQL
docker-compose部署mysql8
使用docker-compose容器化部署mysql8
|
2月前
|
JSON Ubuntu 开发者
ubuntu 22安装lua环境&&编译lua cjson模块
通过上述步骤,可以在 Ubuntu 22.04 系统上成功安装 Lua 环境,并使用 LuaRocks 或手动编译的方式安装 lua-cjson 模块。本文详细介绍了每一步的命令和操作,确保每一步都能顺利完成,适合需要在 Ubuntu 系统上配置 Lua 开发环境的开发者参考和使用。
179 13