MySQL5.7.18源码编译安装笔记【Ubuntu篇】
来源:互联网 发布:js解析二维码图片 编辑:程序博客网 时间:2024/06/03 03:52
①安装依赖
源码编译安装需要若干Linux系统环境依赖,详细参考https://dev.mysql.com/doc/refman/5.7/en/source-installation.html。就Ubuntu16.04LTS而言,执行以下安装命令就OK了(如果有其他缺失的依赖cmake的时候会检测出来甚至会打印出具体的apt和yum包名额外再执行一下安装即可)。
apt install cmake bison libncurses5-dev
②下载源码
源码分带boost版的和不带boost版的。为了方便就直接下载带boost版的。
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.18.tar.gztar -xzv -f mysql-boost-5.7.18.tar.gz
③编译安装
指定cmake选项,详细参考https://dev.mysql.com/doc/refman/5.7/en/source-configuration-options.html。比较重要的选项包括安装目录、数据目录和boost目录。这一步比较漫长,视机器情况可能几十分钟不等吧。我的神船笔记本的风扇开始嗷嗷叫了。可以放着去干其他事情了。
cd mysql-5.7.18/cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_BOOST=boostmake && make install
④初始配置
详细参考https://dev.mysql.com/doc/refman/5.7/en/installing-source-distribution.html。
添加mysql用户组和文件管理。
groupadd mysqluseradd -g mysql mysqlmkdir /usr/local/mysql/datachown -R mysql /usr/local/mysqlchgrp -R mysql /usr/local/mysql
初始化MySQL安装。
/usr/local/mysql/bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
这一过程的最后一行打印输出了root账户的初始密码(真的好随机狗眼已瞎)“ [Note] A temporary password is generated for root@localhost:(+:rGtOj8><<”。这个密码很重要要记下来之后连接MySQL的时候要用到!也可以使用“ --initialize-insecure ”不生成初始密码。需要的话再生成SSL。
/usr/local/mysql/bin/mysql_ssl_rsa_setup --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
自建一个简单的配置文件。
vim /etc/my.cnf[client]socket = /tmp/mysql.sock[mysqld]socket = /tmp/mysql.sockbasedir = /usr/local/mysqldatadir = /usr/local/mysql/data
⑤开启服务
详细参考https://dev.mysql.com/doc/refman/5.7/en/data-directory-initialization-mysqld.html。
设置mysqld服务。
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqldchmod +x /etc/init.d/mysqldupdate-rc.d mysqld defaultsservice mysqld start
设置mysql符号连接。
ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql
连接mysql修改密码。
mysql -uroot -p'(+:rGtOj8><<'mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '1024';
因为是本地自己玩,不考虑环境安全,修改一下配置文件([client]),设置root直接登录和外部连接。
vim /etc/my.cnf[client]user = rootpassword = 1024port = 3306socket = /tmp/mysql.sockroot@ubuntu:~/mysql-5.7.18# mysqlWelcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 6Server version: 5.7.18 Source distributionCopyright (c) 2000, 2017, Oracle and/or its affiliates. All rights reserved.Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.mysql> UPDATE `mysql`.`user` SET `Host` = '%' WHERE `User` = 'root';Query OK, 1 row affected (0.04 sec)Rows matched: 1 Changed: 1 Warnings: 0mysql> FLUSH PRIVILEGES;Query OK, 0 rows affected (0.00 sec)mysql>
- MySQL5.7.18源码编译安装笔记【Ubuntu篇】
- MySQL5.7.18源码编译安装笔记【CentOS篇】
- Mysql5.5.22源码编译安装
- Mysql5.5.22源码编译安装
- Mysql5.5.22源码编译安装
- 源码编译安装 MySQL5.1.68
- mysql5.6源码编译安装
- 源码编译安装MySQL5.6.16
- 源码编译安装mysql5.5.33
- MySQL5.6源码编译安装
- 源码编译安装 Mysql5.5
- 源码编译 安装mysql5.5.50
- MySQL5.5.53 源码编译安装
- mysql5.5源码编译安装
- ubuntu编译安装mysql5.7
- Centos6编译安装Mysql5.7.18, rpm 安装mysql5.7.18,ubuntu apt安装mysql
- Centos7编译安装Mysql5.7.18, rpm 安装mysql5.7.18,ubuntu apt安装mysql
- ubuntu 安装MySQL5.7.18
- linux-4 vim 的常用功能学习
- Halcon模版匹配算子解析
- CSS-结构选择器和伪类伪元素
- Linux判断当前机器是虚拟机还是物理机--dmidecode命令
- 虚拟机里面安装Openfiler 2.99
- MySQL5.7.18源码编译安装笔记【Ubuntu篇】
- 笔记8--CSS基础知识
- E
- mybatis(8)--sqlMapConfig的一些小知识点
- Hello World!
- XML解析
- 最长括号匹配——递推
- Section 2.1 sort3
- 如何将OpenGL渲染的图片保存到本地(正常渲染和离屏渲染)