mysql 5.5.14_mysql5.5.14源码方式安装配置

mysql下载:

说明:MySQL自5.5版本以后开始使用cmake编译。

1、安装所需要系统库相关库文件

[root@centos64 ~]# yum install -y gcc gcc-c++ gcc-g77 autoconf automake zlib* fiex* libxml* ncurses-devel libmcrypt* libtool-ltdl-devel*

2、安装 cmake

[root@centos64 opt]# tar -zxvf cmake-2.8.5.tar.gz

[root@centos64 opt]# cd cmake-2.8.5

[root@centos64 cmake-2.8.5]# ./bootstrap

[root@centos64 cmake-2.8.5]# gmake

[root@centos64 cmake-2.8.5]# gmake install

或者

[root@centos64 ~]# yum install cmake

3、编译安装 MySQL 5.5.14

创建mysql安装目录和数据存放目录:

mkdir -p /usr/local/mysql/

mkdir -p /opt/data/mysql/

创建用户和用户组与赋予数据存放目录权限groupadd -g 502 mysqluseradd -u 502 -g mysql mysqlchown mysql.mysql -R /opt/data/mysql/

chmod +w /usr/local/mysql

chown -R mysql:mysql /usr/local/mysql

[root@centos64 opt]# tar -zxvf mysql-5.5.14.tar.gz

[root@centos64 opt]# cd mysql-5.5.14

[root@centos64 mysql-5.5.14]# CFLAGS="-O3" CXX=gcc

[root@centos64 mysql-5.5.14]# CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti"

[root@centos64 mysql-5.5.14]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_UNIX_ADDR=/tmp/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_EXTRA_CHARSETS:STRING=utf8,gbk \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_MEMORY_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DMYSQL_DATADIR=/opt/data/mysql \

-DMYSQL_USER=mysql \

-DWITH_SSL:STRING=bundled

说明:如果需要配置SSL功能,此处编译时需要加入ssl支持,否则mysql安装后只在配置文件中加入ssl参数会启动失败。

[root@centos64 mysql-5.5.14]# make

[root@centos64 mysql-5.5.14]# make install

以上部分参数说明:

DCMAKE_INSTALL_PREFIX  #mysql安装的主目录,默认为/usr/local/mysql

DMYSQL_DATADIR  #mysql数据库文件的存放目录,可以自定义

DMYSQL_UNIX_ADDR   #系统Socket文件(.sock)设置,基于该文件路径进行Socket链接,必须为绝对路径

DSYSCONFDIR=/etc #mysql配置文件 my.cnf的存放地址,默认为/etc下

DMYSQL_TCP_PORT=3306 #数据库服务器监听端口,默认为3306

DENABLED_LOCAL_INFILE=1 #允许从本地导入数据

DWITH_READLINE=1 #快捷键功能

DWITH_SSL=yes #支持 SSL

DMYSQL_USER=mysql #默认为mysql

//下面3个是数据库编码设置

DEXTRA_CHARSETS=all #安装所有扩展字符集,默认为all

DDEFAULT_CHARSET=utf8 #使用 utf8 字符

DDEFAULT_COLLATION=utf8_general_ci #校验字符

//下面5个是数据库存储引擎设在

DWITH_MYISAM_STORAGE_ENGINE=1 #安装 myisam 存储引擎

DWITH_INNOBASE_STORAGE_ENGINE=1 #安装 innodb 存储引擎

DWITH_ARCHIVE_STORAGE_ENGINE=1 #安装 archive 存储引擎

DWITH_BLACKHOLE_STORAGE_ENGINE=1 #安装 blackhole 存储引擎

DWITH_PARTITION_STORAGE_ENGINE=1 #安装数据库分区

[root@centos64 mysql-5.5.14]# ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib/libmysqlclient.so.18

[root@centos64 support-files]# pwd

/usr/local/mysql/support-files

[root@centos64 support-files]# cp my-large.cnf /etc/my.cnf

cp: overwrite `/etc/my.cnf'? yes

[root@centos64 support-files]# cp mysql.server /etc/init.d/mysqld

4、配置启动mysql

(1)、若有需要请先修改 mysql 的配置 my.cnf

[root@centos64 support-files]# vi /etc/my.cnf

[mysqld]:在该标签下添加

datadir = /opt/data/mysql

(2)、mysql 初始化安装

[root@centos64 support-files]# /usr/local/mysql/scripts/mysql_install_db \

--basedir=/usr/local/mysql \

--datadir=/opt/data/mysql \

--user=mysql

(3)、将 mysql 加入开机启动

[root@centos64 support-files] chmod +x /etc/init.d/mysqld

[root@centos64 support-files] vi /etc/init.d/mysqld (编辑此文件,查找并修改以下变量内容:)

basedir=/usr/local/mysql

datadir=/opt/data/mysql

说明:

其实这两个目录在使用cmake编译时就已经指定了,也可以不再此指定了,如果启动mysqld时出现

/etc/init.d/mysqld: line 46: /usr/local/mysql: is a directory

/etc/init.d/mysqld: line 47: /opt/data/mysql: is a directory

就不要加指定这两个目录)。

[root@centos64 support-files] chkconfig --add mysqld

[root@centos64 support-files] chkconfig --level 345 mysqld on

(4)、为MySQL配置环境变量

[root@centos64 mysql]# vi /etc/profile

export PATH=/usr/local/mysql/bin:$PATH

[root@centos64 mysql]# source /etc/profile

(5)、启动mysql

[root@centos64 mysql]# service mysqld start

5、设置用户密码

[root@centos64 etc]# mysqladmin -uroot password root

删除本机匿名连接的空密码帐号:

mysql> use mysql;

mysql> select host,user,password from user;

+-----------+------+-------------------------------------------+

| host      | user | password                                  |

+-----------+------+-------------------------------------------+

| localhost | root | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B |

| centos64  | root |                                           |

| 127.0.0.1 | root |                                           |

| ::1       | root |                                           |

| localhost |      |                                           |

| centos64  |      |                                           |

+-----------+------+-------------------------------------------+

6 rows in set (0.01 sec)

删掉无用的:

mysql> delete from user where host='127.0.0.1' or host='::1' or host='localhost.localdomain';

删除root密码为空的:

mysql> delete from user where password="";

mysql> flush privileges;

说明:对于root账号,如果考虑安全应该新建其他账号用于远程登录,root账号可以不必开启远程登录。不过对于一般使用,没有太多安全需求,允许root用户远程登录可以方便管理,毕竟使用专用管理软件的图形界面在操作方面要方便的多。

6、设置mysql远程连接

mysql> grant all privileges on *.* to 'root'@'%' identified by "root" with grant option;

mysql> flush privileges;

至此,mysql安装配置初步完成。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值