博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
CentOS6.2编译安装MySQL5.5.25
阅读量:6949 次
发布时间:2019-06-27

本文共 3709 字,大约阅读时间需要 12 分钟。

  之前虚拟机里装的系统都是ubuntu,后来同事说一般的服务器都是安装的centos,所以又重新倒腾了centos系统。

  当然,首先得搭建PHP环境。下载的源码mysql,版本是5.5.25,最新的好像是5.5.4。这里记住,一定要下载源码,在mysql官网下载时,会提示你选择平台,选择下拉菜单中的最底下一个Source Code。

  按照之前ubuntu安装的步骤安装后,启动mysql启动不起来。错误代码为“ The server quit without updating PID file(/var/lib/mysql/CentOS.pid)”,百度和google都搜索了一些资料,基本一致,对我没帮助,按照他们说的修改了也不行。于是乎结合张晏的博客,最终成功搞定。

  第一步:我们首先安装依赖库和开发工具

#依赖库和开发工具yum -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel openldap openldap-devel nss_ldap openldap-clients openldap-servers#Nginxyum -y install pcre-devel  zlib-devel#Phpyum -y install gd-devel libjpeg-devel libpng-devel freetype-devel libxml2-devel curl-devel freetype-devel #Mysqlyum -y install bison gcc gcc-c++ autoconf automake zlib* libxml* ncurses-devel libtool-ltdl-devel* mysql-devel

 

  第二步:由于mysql5.5开始,不再使用configure安装,而是使用cmake。所以需要先安装cmake

wget http://www.cmake.org/files/v2.8/cmake-2.8.6.tar.gztar -zxvf cmake-2.8.6.tar.gzcd cmake-2.8.6/./configuremake && make install

  第三步:cmake安装mysql(我已经下载好了mysql源码文件,放在U盘里,拷贝到/tmp目录下)

//进入/tmp目录下tar -zxvf mysql-5.5.25.tar.gzcd mysql-5.5.25cmake \-DCMAKE_INSTALL_PREFIX=/usr/local/webserver/mysql \-DMYSQL_DATADIR=/user/local/webserver/mysql/data \-DSYSCONFDIR=/etc \-DEXTRA_CHARSETS=all \-DDEFAULT_CHARSET=utf8 \-DDEFAULT_COLLATION=utf8_general_ci \-DWITH_INNOBASE_STORAGE_ENGINE=1 \-DWITH_ARCHIVE_STORAGE_ENGINE=1 \-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \-DWITH_FEDERATED_STORAGE_ENGINE=1 \-DWITH_PARTITION_STORAGE_ENGINE=1 \-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \-DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \-DMYSQL_TCP_PORT=3306 \-DWITH_DEBUG=0 \-DENABLED_LOCAL_INFILE=1

回车执行,执行完成后继续执行 make && make install

  第四步:设置mysql

#设置Mysql#在support-files目录中有五个配置信息文件(这里很重要,一定要根据自己的内存复制对应的cnf文件,否则mysql始终起不来):#my-small.cnf (内存<=64M)#my-medium.cnf (内存 128M)#my-large.cnf (内存 512M)#my-huge.cnf (内存 1G-2G)#my-innodb-heavy-4G.cnf (内存 4GB)cd /usr/local/webserver/mysqlcp ./support-files/my-huge.cnf /etc/my.cnf vi /etc/my.cnf#在 [mysqld] 段增加datadir = /data/mysqlwait-timeout = 30max_connections = 512default-storage-engine = MyISAM#在 [mysqld] 段修改max_allowed_packet = 16M

  第五步:添加mysql用户和用户组,生成新的mysql授权表

//添加mysql运行的用户和用户组groupadd mysqluseradd -g mysql mysql -s /bin/false -d /home/mysql  //没有shell,不可本机登陆(安全起见)cd /usr/local/webserver/mysqlchown -R root .chown -R mysql datachgrp -R mysql .//生成新的mysql授权表//进入mysql安装目录下的脚本目录cd /usr/local/webserver/mysql/scripts//利用mysql_install_db脚本生成新的mysql授权表./mysql_install_db --basedir=/usr/local/webserver/mysql --datadir=/usr/local/webserver/mysql/data --user=mysql//mysql server在系统中的服务项设置//复制服务文件并修改cd /usr/local/webserver/mysql/support-filescp mysql.server mysqld//修改mysqldbasedir=/usr/local/webserver/mysqldatadir=/usr/local/webserver/mysql/datamv mysqld /etc/init.d/mysqldchmod 755 /etc/init.d/mysqld//设置软连接使mysql,  mysqldump,  mysqladmin这三个bin命令能在shell中直接运行sudo ln -s /usr/local/webserver/mysql/bin/mysql /usr/binsudo ln -s /usr/local/webserver/mysql/bin/mysqldump /usr/binsudo ln -s /usr/local/webserver/mysql/bin/mysqladmin /usr/binrm -rf /etc/mysql/my.cnf 因为已经把此文件复制到/etc/my.cnf  如果不删除的话,mysql启动不起来。

  第六步:启动mysql,设置mysql用户名和密码

/etc/init.d/mysqld start//设置root密码mysqladmin -u root password "admin"//mysql数据库中文乱码解决vi /etc/my.cnf//然后在[mysqld]配置选项下添加character-set-server=utf8//然后进入mysqlcd /usr/local/webserver/mysql/binmysql -u root -p提示输入密码mysql> show variables like '%character%';//结果:character_set_database,character_set_server两项都变为utf8了

转载于:https://www.cnblogs.com/longyejiadao/archive/2012/06/26/2564007.html

你可能感兴趣的文章
C_求质数
查看>>
Python time & random模块
查看>>
java JMF 多媒体
查看>>
Python核心编程(第二版)PDF
查看>>
golang 性能测试pprof
查看>>
ubuntu开机只有一条横杠在闪的解决办法
查看>>
分享幻灯片+在线阅读
查看>>
塔式、机架式、刀片式服务器的区别和特点
查看>>
25、Base64
查看>>
如何用 Canvas绘制图形
查看>>
Dynamics CRM 系统自定义部分的语言翻译
查看>>
Makefile学习与进阶之Makefile.am和$$(M)的意思
查看>>
Codeforces Round #382 (Div. 2)
查看>>
日历控件--My97DatePicker的使用
查看>>
k8s运行容器之Job(四)--技术流ken
查看>>
Android下打印调试堆栈方法(转)
查看>>
iOS7坐标上移44pt的解决
查看>>
面向对象基础
查看>>
Python全栈开发—第1站
查看>>
15 函数回调 模块
查看>>