mysql5.7编译安装
2016-06-13 11:14
369 查看
1. 安装库文件
安装编译代码需要的包
2. 下载编译安装cmake
cmake-2.8.4.tar.gz,cmake安装包.在www.cmake.org可下最新版本
3. 下载安装boost
(MySQL currently requires boost_1_59_0),http://sourceforge.net/projects/boost/files/boost/
4. 编译安装Mysql 5.7.9版本
5. 配置MySQL用户
修改权限
6. 初始化mysql数据库
进入安装路径,执行初始化配置脚本,创建系统自带的数据库和表
7. 修改my.cnf配置文件(自由发挥)
8. 添加mysql自启动
添加服务,拷贝服务脚本到init.d目录,并设置开机启动
9. 配置环境变量
MySQL启动成功后,root默认没有密码,我们需要设置root密码。
设置之前,我们需要先设置PATH,使之直接调用mysql
修改/etc/profile文件,在文件末尾添加
关闭文件,运行下面的命令,让配置立即生效
10. 新添加的初始化密码
mysql5.7会生成一个初始化密码
11. 添加防火墙
防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口
打开/etc/sysconfig/iptables
在“-A INPUT –m state--state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:
-A INPUT-m state --state NEW -m tcp -p -dport 3306 -j ACCEPT
然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:
serviceiptables restartCentOS 7中默认使用Firewalld做防火墙,所以修改iptables后,在重启系统后,根本不管用。
Firewalld中添加端口方法如下:
firewall-cmd--zone=public --add-port=3306/tcp --permanent
firewall-cmd--reload
有做软件测试的小伙伴们可以一起学习,进Q群 339614248
安装编译代码需要的包
shell>yum -y install make gcc-c++ bisonncurses-devel #Set timezone(设置服务器的时区:亚洲上海) shell>rm -rf /etc/localtime shell>ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #Remove MYSQL if exists mysql (删除服务器上已存在MYSQL,切记数据库备份) shell>rpm -qa|grep mysql shell>rpm -e mysql shell>yum -y remove mysql-server mysql mysql-libs |
2. 下载编译安装cmake
cmake-2.8.4.tar.gz,cmake安装包.在www.cmake.org可下最新版本
Shell>tar -zxvf cmake-2.8.8.tar.gz shell>cd cmake-2.8.8 shell>./bootstrap shell>make shell>make install |
3. 下载安装boost
(MySQL currently requires boost_1_59_0),http://sourceforge.net/projects/boost/files/boost/
shell>unzipboost_1_59_0.zip shell>mvboost_1_59_0 /usr/local/boost shell>cd /usr/local/boost shell> ./bootstrap.sh shell> ./b2 |
4. 编译安装Mysql 5.7.9版本
shell>tar zxvf mysql-5.7.9.tar.gz shell>cd mysql-5.7.9 shell>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_ARCHIVE_STORAGE_ENGINE=1 \ -DWITH_BLACKHOLE_STORAGE_ENGINE=1 \ -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ -DWITH_PARTITION_STORAGE_ENGINE=1 \ -DWITH_EXAMPLE_STORAGE_ENGINE=0 \ -DWITH_FEDERATED_STORAGE_ENGINE=0 \ -DWITH_BOOST=/usr/local/boost \ -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock \ -DMYSQL_TCP_PORT=3306 \ -DENABLED_LOCAL_INFILE=1 \ -DENABLED_PROFILING=1 \ -DWITH_EXTRA_CHARSETS=gbk,gb2312,utf8,ascii,utf8mb4 \ -DDEFAULT_CHARSET=utf8 \ -DDEFAULT_COLLATION=utf8_general_ci shell>make -j`grep processor /proc/cpuinfo | wc -l` && make install |
5. 配置MySQL用户
shell>groupadd mysql shell>useradd -g mysql -s /sbin/nologin mysql |
shell>chown -R mysql.mysql /usr/local/mysql shell>mkdir /var/lib/mysql shell>chown -R mysql.mysql /var/lib/mysql #socket文件存放位置 |
6. 初始化mysql数据库
进入安装路径,执行初始化配置脚本,创建系统自带的数据库和表
shell> bin/mysql_install_db --user=mysql # Before MySQL 5.7.6 shell> bin/mysqld --initialize --user=mysql--basedir=/usr/local/mysql--datadir=/usr/local/mysql/data # MySQL 5.7.6 and up 2015-10-25T13:55:17.985338Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details). 2015-10-25T13:55:20.481855Z 0 [Warning] InnoDB: New log files created, LSN=45790 2015-10-25T13:55:20.757621Z 0 [Warning] InnoDB: Creating foreign key constraint system tables. 2015-10-25T13:55:20.829606Z 0 [Warning] No existing UUID has been found, so we assume that this is the first time that this server has been started. Generating a new UUID: 0803aa28-7b20-11e5-9937-000c29502ea3. 2015-10-25T13:55:20.831561Z 0 [Warning] Gtid table is not ready to be used. Table 'mysql.gtid_executed' cannot be opened. 2015-10-25T13:55:20.844288Z 1 [Note] A temporary password is generated forroot@localhost: 8QVlQ(s82//L |
7. 修改my.cnf配置文件(自由发挥)
shell>vi /etc/my.cnf [mysqld] # These are commonly set, remove the # and set as required. basedir=/usr/local/mysql datadir=/usr/local/mysql/data port=3306 #server_id = ..... socket=/var/lib/mysql/mysql.sock |
8. 添加mysql自启动
添加服务,拷贝服务脚本到init.d目录,并设置开机启动
shell>cp support-files/mysql.server /etc/init.d/mysqld shell>chkconfig mysqld on shell>service mysqld start |
9. 配置环境变量
MySQL启动成功后,root默认没有密码,我们需要设置root密码。
设置之前,我们需要先设置PATH,使之直接调用mysql
修改/etc/profile文件,在文件末尾添加
#vi /etc/profile PATH=/usr/local/mysql/bin:$PATH export PATH |
#source /etc/profile |
10. 新添加的初始化密码
mysql5.7会生成一个初始化密码
shell>mysql -uroot -p’eZ4hXJ,r2Tde’ mysql> show databases; ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 修改默认密码 mysql>alter user 'root'@'localhost' identified by '123456'; |
11. 添加防火墙
防火墙的3306端口默认没有开启,若要远程访问,需要开启这个端口
打开/etc/sysconfig/iptables
在“-A INPUT –m state--state NEW –m tcp –p –dport 22 –j ACCEPT”,下添加:
-A INPUT-m state --state NEW -m tcp -p -dport 3306 -j ACCEPT
然后保存,并关闭该文件,在终端内运行下面的命令,刷新防火墙配置:
serviceiptables restartCentOS 7中默认使用Firewalld做防火墙,所以修改iptables后,在重启系统后,根本不管用。
Firewalld中添加端口方法如下:
firewall-cmd--zone=public --add-port=3306/tcp --permanent
firewall-cmd--reload
有做软件测试的小伙伴们可以一起学习,进Q群 339614248
相关文章推荐
- MySQL引擎---读写分离对不同引擎的选择
- 基于Jax-WS和Mysql数据库的WEB服务开发
- weka-mysql数据库连接及以ARFF文件导出[3]
- CAS服务端的mysql数据库查询认证机制
- mysql索引总结----mysql 索引类型以及创建
- MySQL入门03-MySQL配置安全性、易用性
- mysql中 ISNULL,IFNULL,NULLIF用法
- r语言处理mysql数据
- 安装keepalive错误:types.h:14: error: conflicting types for ‘fd_set’
- mysql索引
- Navicat For Mysql快捷键
- mysql server的安装及自定义脚本
- jira+mysql Unknown system variable 'storage_engine
- MYSQL IN 与 EXISTS 的优化示例介绍,mysql exists
- Mysql最快清空数据库表的SQL语句
- 安装keepalive错误:configure: error: No SO_MARK declaration in headers
- jira+mysql Unknown system variable 'storage_engine
- lamp部署 find mysql命令行 time() input date iptables 2016.06.12回顾
- MySQL cluster 如何创建磁盘表解读
- MySQL主从复制与读写分离