linux mysql-boost 5.7 源码安装教程

一、解压mysql

[root@mysql3 src]# pwd
/data/mysql/src
[root@mysql3 src]# ls
mysql-boost-5.7.18.tar.gz
[root@mysql3 src]# tar -xvf mysql-boost-5.7.18.tar.gz

二、编译

进入解压后的目录:cd /data/mysql/src/mysql-5.7.18

ps:执行顺序cmake;make;make install:


   1.cmake

 cmake \

-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \

-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \

-DDEFAULT_CHARSET=utf8 \

-DDEFAULT_COLLATION=utf8_general_ci \

-DWITH_MYISAM_STORAGE_ENGINE=1 \

-DWITH_INNOBASE_STORAGE_ENGINE=1 \

-DWITH_ARCHIVE_STORAGE_ENGINE=1 \

-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \

-DWITH_MEMORY_STORAGE_ENGINE=1 \

-DWITH_READLINE=1 \

-DENABLED_LOCAL_INFILE=1 \

-DMYSQL_DATADIR=/usr/local/mysql/data \ 

-DMYSQL_USER=mysql \

-DMYSQL_TCP_PORT=3306 \

-DENABLE_DOWNLOADS=1 \

-DDOWNLOAD_BOOST=1 \

-DWITH_BOOST=/application/soft/mysql-5.7.13/boost/

 

2.make

时长估计一个小时左右

3.make install

 

三、目录权限授权

chmod +w /usr/local/mysql

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

chmod -R 777 /usr/local/mysql

四、配置my.cnf 文件

vi /etc/my.cnf


[client]
port=3306
socket = /usr/local/mysql/mysql.sock

[mysqld]
datadir = /usr/local/mysql/data
socket = /usr/local/mysql/mysql.sock
server-id = 1                    #backup这台设置2 
log-bin = mysql-bin
binlog-ignore-db = mysql,information_schema     #忽略写入binlog日志的库 
auto-increment-increment = 1            #字段变化增量值 
auto-increment-offset = 1              #初始字段ID为2
slave-skip-errors = all                       #忽略所有复制产生的错误      
skip-grant-tables=1
port = 3306

五、配置环境变量

vi /etc/profile

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

六、新建mysql用户、mysql用户组目录权限

#1. mysql用户组

groupadd mysql

# 2.mysql用户

useradd -r -s /sbin/nologin -g mysql mysql -d /usr/local/mysql  

七、将/usr/local/mysql的所有者及所属组改为mysql

chown -R mysql.mysql /usr/local/mysql

八.接下来初始化数据库

[root@host-10-5-0-131 mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data

九.复制配置文件到 /etc/my.cnf 这里是mysql的基本配置问题

命令:cp -a ./support-files/my-default.cnf /etc/my.cnf   #会有一个选择是否覆盖原有文件,直接按 y回车选择是就可以

标注:mysql5.7  support-files下没有 my-default.cnf ,需要自己创建

十.把mysql放到本地系统服务中

1.把mysql放到本地系统服务中

 [root@host-10-5-0-131 mysql]# cp support-files/mysql.server /etc/init.d/mysqld    

2.把mysqlld授权
[root@host-10-5-0-131 mysql]# chmod a+x /etc/init.d/mysqld

3.添加到开发服务
[root@host-10-5-0-131 mysql]# chkconfig --add /etc/init.d/mysqld

4.设置开机启动
[root@host-10-5-0-131 mysql]# chkconfig mysqld on

5.启动服务
[root@host-10-5-0-131 mysql]# service mysqld start

十一.修改初始化密码

当操作数据库命令的时候会提示该错误(先改密码才能操作):

ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

1.改密码(登录后):

mysql> alter user root@localhost identified by '新密码';
Query OK, 0 rows affected (0.00 sec)

2.改密码(未登录)不建议,密码明文暴露:

mysqladmin -uroot -p'旧密码' password'新密码'

PS:到这数据已经按照完成,以下是可选或可配置的选项

1.【可选】重新初始化(一般出问题才重新初始化)

2.设置允许所有远程客户端连接登录

1..mysql>use mysql;

2.mysql> select host,user,authentication_string from user;

3.mysql> update user set host='%' where user='root' and host='localhost';

4.mysql>flush privileges; //修改生效,一定不能落下这步,否则第三步不生效

5.mysql> select host,user,authentication_string from user;

重新查看一遍,如图已经修改完成

6.查看开放的端口是否有3306:firewall-cmd --list-ports

7.没开启3306的话就开启防火墙端口:firewall-cmd --zone=public --add-port=3306/tcp --permanent

注意:添加端口后,必须用命令firewall-cmd --reload重新加载一遍才会生效

这样远程客户端连接就可以了。。。

猜你喜欢

转载自blog.csdn.net/qq_37946744/article/details/82587549
今日推荐