您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
# 怎么在Solaris 10下安装MySQL 5
## 前言
在Solaris 10操作系统上安装MySQL 5.x版本需要特别注意系统依赖和编译兼容性。由于Solaris 10默认不包含MySQL,且官方已停止对旧版本的支持,本文将详细介绍通过源码编译和第三方二进制包两种安装方式。
---
## 一、环境准备
### 1.1 系统要求
- Solaris 10(建议更新至最新补丁包)
- 至少1GB可用磁盘空间
- 512MB以上内存(推荐1GB)
- GCC 3.4+ 或 Sun Studio编译器
### 1.2 依赖安装
```bash
# 安装基础工具
pkgadd -d SUNWgcc SUNWgmake SUNWbash
# 32位库支持(如需要)
pkgadd -d SUNWlibm
从MySQL官网下载历史版本(如5.1.73):
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.1.73.tar.gz
tar -zxvf mysql-5.1.73.tar.gz
cd mysql-5.1.73
CC=gcc CXX=g++ \
./configure --prefix=/opt/mysql \
--with-extra-charsets=all \
--with-mysqld-ldflags=-lrt
undefined symbol: ceil
export LDFLAGS="-lm"
export LIBS="-lpthread"
gmake -j 4
gmake install
从sunfreeware.com获取预编译包:
wget ftp://ftp.sunfreeware.com/pub/freeware/sparc/10/mysql-5.0.45-sol10-sparc-local.gz
gunzip mysql-5.0.45-sol10-sparc-local.gz
pkgadd -d mysql-5.0.45-sol10-sparc-local
echo "/usr/local/mysql/lib" >> /etc/ld.so.conf
ldconfig
groupadd mysql
useradd -g mysql mysql
cd /opt/mysql
scripts/mysql_install_db --user=mysql
chown -R mysql:mysql .
bin/mysqld_safe --user=mysql &
编辑/opt/mysql/my.cnf
:
[mysqld]
datadir=/opt/mysql/data
socket=/tmp/mysql.sock
default-storage-engine=MyISAM
创建SMF服务:
<!-- /var/svc/manifest/application/mysql.xml -->
<service name="application/mysql" type="service">
<exec_method type="method" name="start" command="/opt/mysql/bin/mysqld_safe &"/>
<exec_method type="method" name="stop" command="/opt/mysql/bin/mysqladmin shutdown"/>
</service>
导入服务:
svccfg import /var/svc/manifest/application/mysql.xml
/opt/mysql/bin/mysqladmin version
# 预期输出示例
# mysqladmin Ver 8.42 Distrib 5.1.73, for sun-solaris10 on sparc
在Solaris 10上安装MySQL 5需要特别注意32/64位兼容性和库依赖问题。推荐使用Sunfreeware的预编译包简化流程,如需特定版本则建议通过源码编译。随着Oracle停止对Solaris 10的支持,建议尽快升级到更高版本的Solaris或迁移至其他平台。
注意事项
- Solaris 10默认的/usr/ucb/cc
编译器不兼容,必须使用GCC
- 生产环境建议添加swap分区避免OOM错误
- MySQL 5.0/5.1已停止安全更新,仅限测试使用 “`
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。