025、编译安装MySQL__5.7.26记录
本文最后更新于 63 天前,其中的信息可能已经过时,如有错误请发送邮件到wuxianglongblog@163.com

编译安装MySQL__5.7.26记录

系统:centos7.4(3.10内核)

1、查找并清除自带的数据库

# rpm -qa | grep mariadb
# rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

2、opt目录下存放源码包

# cd /opt
# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.26.tar.gz

3、编译时需要的库

# wget http://downloads.sourceforge.net/project/boost/boost/1.59.0/boost_1_59_0.tar.gz

4、相关依赖

# yum install cmake gcc gcc-c++ ncurses-devel bison zlib libxml openssl automake autoconf make libtool bison-devel libaio-devel
# yum install openssl-devel

5、添加MySQL用户和组(用于启动服务)

# groupadd mysql
# useradd -d /home/myql -g mysql -m mysql
# id mysql

6、新建相关目录,并赋权限给mysql用户

# mkdir /usr/local/mysql
# mkdir /usr/local/mysql/data
# mkdir -p /usr/local/mysql/log
# mkdir -p /usr/local/mysql/run
# mkdir -p /usr/local/mysql/tmp
# chown -R mysql:mysql /usr/local/mysql/   //赋予权限
# cd /usr/local 
# ll    //用户组、用户为mysql
# cd /usr/local/mysql 
# ll    //用户组、用户为mysql
# chmod -R 755 /usr/local/mysql/    //修改权限

7、解包

# cd /opt
# tar -zxvf mysql-5.7.26.tar.gz
# tar -zxvf boost_1_59_0.tar.gz

8、编译&安装

# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DINSTALL_DATADIR=/usr/local/mysql/data -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DEXTRA_CHARSETS=all -DWITH_SSL=yes -DWITH_EMBEDDED_SERVER=1 -DENABLED_LOCAL_INFILE=1 -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DMYSQL_UNIX_ADDR=/usr/local/mysql/run/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DSYSCONFDIR=/etc -DWITH_READLINE=on -DWITH_BOOST=/opt/boost_1_59_0
# echo $?   //显示0说明正常
# make
# echo $?   //显示0说明正常
# make install
# echo $?   //显示0说明正常
# cd /usr/local/mysql/bin
# touch /usr/local/mysql/log/mysqld.log  //新建日志文件
# chown -R mysql:mysql /usr/local/mysql/log/mysqld.log  //修改文件权限
# mkdir /etc/mysql
# cd /etc/mysql
# vi my.cnf
[mysqld]
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/run/mysql.sock
user=mysql
symbolic-links=0
[mysqld_safe]
log-error=/usr/local/mysql/log/mysqld.log
pid-file=/usr/local/mysql/run/mysqld.pid
# cd /usr/local/mysql/bin

9、初始化

# ./mysqld --defaults-file=/etc/mysql/my.cnf --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/
得到临时密码:ubovCIT+Z6ie

10、启动mysqld服务。MySQL 官方推荐使用 mysqld_safe 启动 mysqld 服务。mysqld_safe 增加了一些安全特性,比如它会在遇到错误时重启 mysqld 服务,并把运行时信息记录到 error log 中。

# ./mysqld_safe --defaults-file=/etc/mysql/my.cnf --user=mysql
新开ssh,查看进程
# ps -ef | grep mysqld #有进程说明服务正常
# kill -9 mysqld_safe进程号

11、添加服务

# cd /usr/local/mysql
# cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
# chmod 755 /etc/init.d/mysqld
# chkconfig --add mysqld
# chkconfig --list mysqld

12、添加mysql的环境变量

# vim /etc/profile
最后一行添加
export PATH=/usr/local/mysql/bin:$PATH
# source /etc/profile

13、启动服务

service mysqld start   //提示Starting MySQL. SUCCESS!

14、登录MySQL,密码用初始化时生成的临时密码

mysql -uroot -p密码

执行sql会报错,需要修改密码
mysql> show databases;
ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.

mysql> set PASSWORD=PASSWORD('xxxxxxxx');
Query OK, 0 rows affected, 1 warning (0.01 sec)

mysql> alter user 'root'@'localhost' PASSWORD EXPIRE NEVER;
Query OK, 0 rows affected (0.00 sec)

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

退出
mysql>exit

重新登录,再执行mysql> show databases;
远程访问数据库
mysql>grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
mysql>flush privileges;

15、停止防火墙

systemctl stop firewalld.service
开机禁止防火墙
systemctl disable firewalld.service
谨此笔记,记录过往。凭君阅览,如能收益,莫大奢望。
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇