从源码安装mysql_源码安装mysql5.6

源码安装mysql5.6

下载mysql及相关软件包

从mysql 5.5版本开始,mysql源码安装开始使用cmake了

下载cmake                      htttps://cmake.org/files/

下载ncurses                    http://ftp.gnu.org/gnu/ncurses/

下载bison                        http://ftp.gnu.org/gnu/bison

安装mysql依赖包

安装cmake

[root@localhost mysql]# tar -zxvf cmake-3.4.1.tar.gz

[root@localhost cmake-3.4.1]# ./configure

[root@localhost cmake-3.4.1]# make ; make install

安装bison

[root@localhost mysql]# tar -zxvf bison-3.0.tar.gz

[root@localhost bison-3.0]# ./configure

[root@localhost bison-3.0]# make ; make install

安装ncurses

[root@localhost mysql]# tar -zxvf ncurses-6.0.tar.gz

[root@localhost ncurses-6.0]# ./configure

[root@localhost ncurses-6.0]# make ; make install

安装mysql

解压mysql

[root@localhost soft]# tar -zxvf mysql-5.5.45.tar.gz

安装mysql

[root@localhost mysql-5.5.46]# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci

编译mysql

[root@localhost mysql-5.5.46]#make ; make install 编译 6分钟

安装msyql详解

# -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安装路径

# -DMYSQL_DATADIR=/usr/local/mysql/data \ #数据文件存放位置

# -DSYSCONFDIR=/etc \ #my.cnf路径

# -DWITH_MYISAM_STORAGE_ENGINE=1 \ #支持MyIASM引擎

# -DWITH_INNOBASE_STORAGE_ENGINE=1 \ #支持InnoDB引擎

# -DWITH_MEMORY_STORAGE_ENGINE=1 \ #支持Memory引擎

# -DWITH_READLINE=1 \ #快捷键功能(我没用过)

# -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \ #连接数据库socket路径

# -DMYSQL_TCP_PORT=3306 \ #端口

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

# -DWITH_PARTITION_STORAGE_ENGINE=1 \ #安装支持数据库分区

# -DEXTRA_CHARSETS=all \ #安装所有的字符集

# -DDEFAULT_CHARSET=utf8 \ #默认字符

# -DDEFAULT_COLLATION=utf8_general_ci \ #校验字符

1 # -DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ #安装路径2 # -DMYSQL_DATADIR=/usr/local/mysql/data \ #数据文件存放位置3 # -DSYSCONFDIR=/etc \ #my.cnf路径4 # -DWITH_MYISAM_STORAGE_ENGINE=1 \ #支持MyIASM引擎5 # -DWITH_INNOBASE_STORAGE_ENGINE=1 \ #支持InnoDB引擎6 # -DWITH_MEMORY_STORAGE_ENGINE=1 \ #支持Memory引擎7 # -DWITH_READLINE=1 \ #快捷键功能(我没用过)8 # -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock \ #连接数据库socket路径9 # -DMYSQL_TCP_PORT=3306 \ #端口10 # -DENABLED_LOCAL_INFILE=1 \ #允许从本地导入数据11 # -DWITH_PARTITION_STORAGE_ENGINE=1 \ #安装支持数据库分区12 # -DEXTRA_CHARSETS=all \ #安装所有的字符集13 # -DDEFAULT_CHARSET=utf8 \ #默认字符14 # -DDEFAULT_COLLATION=utf8_general_ci \ #校验字符

创建用户及用户组

[root@end mysql]# groupadd mysql 创建mysql组

[root@end mysql]# useradd -r -g mysql mysql 创建mysql用户并添加到mysql组

修改目录所有者和所有组

[root@end mysql]#chown -R mysql:mysql /usr/local/mysql 将mysql目录下的所有文件的所有者和所有组改为msyql

初始化数据库

[root@end mysql]# scripts/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data/

复制mysql服务启动配置文件(注意:在CentOS 6.4版操作系统的最小安装完成后,在/etc目录下会存在一个my.cnf,需要将此文件更名为其他的名字,如:/etc/my.cnf.bak,否则,该文件会干扰源码安装的MySQL的正确配置,造成无法启动)

[root@end mysql]# cp /usr/local/mysql/support-files/my-medium.cnf /etc/my.cnf

注册为服务

[root@end mysql]# cp /usr/local/mysql/support-files/mysql.server /etc/rc.d/init.d/mysqld 将mysqld添加为服务

让chkconfig管理mysql服务

[root@end mysql]# chkconfig --add mysqld 将mysqld服务添加到chkconfig中

[root@end mysql]# chkconfig mysqld on 重启系统后服务自动运行

设置环境变量

在文件/etc/profile末尾添加

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

[root@end mysql]# source /etc/profile 使修改的环境变量立即生效

启动mysql服务

[root@end mysql]# service mysqld start

Starting MySQL... [确定]

检查mysql服务是否启动

[root@end mysql]# netstat -tulnp |grep 3306

tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 24351/mysqld

查看mysql相关进程

[root@localhost ncurses-6.0]# ps aux |grep mysql

root 48813 0.0 0.3 11304 1492 pts/2 S 16:47 0:00 /bin/sh /usr/local/mysql/bin/mysqld_safe --datadir=/usr/local/mysql/data --pid-file=/usr/local/mysql/data/localhost.localdomain.pid

mysql 48979 0.0 9.8 413156 37360 pts/2 Sl 16:47 0:00 /usr/local/mysql/bin/mysqld --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --plugin-dir=/usr/local/mysql/lib/plugin --user=mysql --log-error=/var/log/mysqld.log --pid-file=/usr/local/mysql/data/localhost.localdomain.pid --socket=/var/lib/mysql/mysql.sock

root 49018 0.0 0.2 103304 892 pts/2 S+ 16:53 0:00 grep mysql

修改mysql用户root密码

[root@end mysql]# mysql -uroot 登录到mysql,首次登陆无密码

mysql> SET PASSWORD = PASSWORD('endmoon'); 设置mysql密码

Query OK, 0 rows affected (0.00 sec)

用设置的密码登录到mysql数据库

[root@end mysql]# mysql -u root -p

Enter password: endmoon

若要设置root用户可以远程访问,执行

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.20' IDENTIFIED BY 'password' WITH GRANT OPTION;

Query OK, 0 rows affected (0.00 sec)

配置防火墙

防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口

打开/etc/sysconfig/iptables,在-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT后面添加

-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

[root@end mysql]# service iptables restart 使更改的防火墙配置生效

iptables:将链设置为政策 ACCEPT:filter [确定]

iptables:清除防火墙规则: [确定]

iptables:正在卸载模块: [确定]

iptables:应用防火墙规则: [确定]

那么mysql数据库的源码安装到这里就结束了

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值