centos+mysql+部署_CentOS+MYSQL 后端部署 生产环境

本文详细介绍了在CentOS 5.4或5.5上安装MySQL 5.5.16的过程,包括分区方案、系统环境、软件依赖安装、用户与权限设置、数据库初始化及远程访问配置。在分区方案中,为/boot、swap、/tmp、/data和/u目录分配了不同大小的硬盘空间。在安装过程中,强调了CMAKE的使用以及针对MySQL的特定配置选项。最后,文章提到了在配置字符集时遇到的问题及解决方法。
摘要由CSDN通过智能技术生成

0. MYSQL数据库服务器分区方案(我的是146G硬盘):

=============================

/boot:用来存放与Linux系统启动有关的程序,比如启动引导装载程序等,大小为100MB;

swap:实现虚拟内存,建议大小是物理内存的1~2倍;

/tmp:将临时盘在独立的分区,可避免在文件系统被塞满时影响到系统的稳定性。大小为内存大小;

/data: 用来存放MYSQL数据文件目录,数据文件存放目录单独分离一个独立硬盘,大小为100G;

/u :   用户存放应用程序所占用的空间,建议大小为剩下的空间;

1. 系统环境

=========================

CENTOS 5.4或5.5 64bit

MYSQL 5.5.16

####################################

# 安装相关组件:

yum -y install yum-fastestmirror

yum -y install patch make flex bison tar

yum -y install libtool libtool-libs kernel-devel

yum -y install libjpeg libjpeg-devel libpng libpng-devel

yum -y install libtiff libtiff-devel gettext gettext-devel

yum -y install libxml2 libxml2-devel zlib-devel  net-snmp

yum -y install file glib2 glib2-devel bzip2 diff* openldap-devel

yum -y install bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs

yum -y install e2fsprogs-devel krb5 krb5-devel libidn libidn-devel

yum -y install openssl openssl-devel vim-minimal unzip

# 安装MYDSQL所需要系统库相关库文件

yum install -y gcc gcc-c++ gcc-g77 autoconf automake  fiex* ncurses-devel libmcrypt* libtool-ltdl-devel* bison

######################################

######################################

#前期准备

######################################

(1) 创建用户和用户组与赋予数据存放目录权限

# groupadd mysql

# useradd -s /sbin/nologin -M -g mysql mysql

# mkdir /data/mysql

# chown -R mysql:mysql /data/mysql

2. 软件安装

=================================================

(1) CMAKE 安装

新版本MYSQL5.*安装需要CMAKE软件支持

# tar  xvzf cmake-2.8.4.tar.gz

# cd cmake-2.8.4

# ./configure

# make && make install

(2) MYSQL 源码包安装

# tar zxf mysql-5.5.16.tar.gz

# cd mysql-5.5.16

# cmake . -DCMAKE_INSTALL_PREFIX=/u/mysql5 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_DEBUG=0 -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk  -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1

# make && make install

复制配置文件

# cp support-files/my-medium.cnf /etc/my.cnf

# chmod 755 scripts/mysql_install_db

# sed -i 's/skip-locking/skip-external-locking/g' /etc/my.cnf

# cp -p support-files/mysql.server /etc/init.d/mysqld

# chmod 755 /etc/init.d/mysqld

# ./scripts/mysql_install_db --basedir=/u/mysql5 --datadir=/data/mysql --user=mysql

初始化数据库,必须带basedir,datadir参数,不然报错,具体错误可网上查看。

# /etc/init.d/mysqld start (启动数据库)

# mysql -u root -p (通过命令行登录管理MySQL服务器 初始密码为空)

修改root密码

mysql>;use mysql ;

mysql>; update user set password=PASSWORD("123456") where user='root';

mysql>; FLUSH PRIVILEGES;

修改远程登陆方式

1、修改localhost

更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改成"%"

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

mysql>FLUSH PRIVILEGES;

2、指定授权

使用myuser/mypassword从任何主机连接到mysql服务器:

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

使用myuser/mypassword从ip为192.168.225.166的主机连接到mysql服务器:

GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.225.166' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

3、泛授权

mysql -h localhost -u root

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' WITH GRANT OPTION; //赋予任何主机上以root身份访问数据的权限

mysql>FLUSH PRIVILEGES;

注意问题:

===========================================

上面编译支持的字符集GBK没有生效,也不知道啥原因,百度,google,都没有找到解决办法,只好重新编译。大于5版本通过修改my.cnf参数不生效。从新编译方法:

cmake . -DCMAKE_INSTALL_PREFIX=/u/mysql -DWITH_INNOBASE_STORAGE_ENGINE=1 -DENABLED_LOCAL_INFILE=1 -DMYSQL_TCP_PORT=3306 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=gbk -DDEFAULT_COLLATION=gbk_chinese_ci -DWITH_DEBUG=0 -DWITH_EXTRA_CHARSETS:STRING=utf8,gbk  -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DENABLED_LOCAL_INFILE=1

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值