开启左侧

Linux中编译安装mysql-5.7.19

二维码 [复制链接]
74 0
摘要:本文主要记录了如果在Linux中(centos 6.x)编译安装mysql-5.7.19,截止到本文时间,当前为最新mysql版本。同时记录如果在忘记mysql密码的情况下修改其root登录密码。

1、准备编译环境
由于最新的mysql版本需要2.8以上的版本,所以我们除了要安装必要的开发环境外,还得更新cmake工具。执行以下命令:

  1. yum groupinstall "Development Tools" -y
  2. yum install cmake -y
复制代码


2、下载mysql源码包

由于最新版本的mysql需要boost库,我们在官网一并将boost库也下载了,下载地址如下:
https://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5.7.19.tar.gz
https://cdn.mysql.com//Downloads ... boost-5.7.19.tar.gz

3、编译安装

将下载好的两个源码包放到/opt目录下,执行如下命令:

  1. tar zxf mysql-5.7.19.tar.gz
  2. tar zxf mysql-boost-5.7.19.tar.gz
  3. #此时boost库也会解压到相同目录mysql-5.7.19
  4. cd mysql-5.7.19
  5. cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DDEFAULT_CHARSET=gbk -DDEFAULT_COLLATION=gbk_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DMYSQL_TCP_PORT=3306 -DENABLE_DOWNLOADS=1 -DWITH_BOOST=./boost/
  6. make
  7. make install
  8. chown mysql:mysql -R /usr/local/mysql
  9. cd /usr/local/mysql
  10. ./bin/mysql_install_db --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql
  11. cp support-files/mysql.server /etc/init.d/mysql
复制代码


4、修改root密码
# 最简单最粗暴的方法 找到mysql的配置文件直接编辑
vim /etc/my.cnf
# 在 [mysqld] 中加上一行跳过权限限制
skip-grant-tables
# 保存退出 重启mysql服务
service mysqld restart
# 用户登录
mysql -uroot -p (直接点击回车,密码为空)
# 选择数据库
use mysql;
# 但是在5.7版本中不存在password字段,所有我们要用以下修改进行重置密码
update user set authentication_string=password('new password') where user='root';
# 刷新权限
flush privileges;
# 退出mysql
quit;
# 将最开始修改的配置文件my.cnf中的skip-grant-tables删除 重启mysql
service mysqld restart
# 当你登陆mysql之后你会发现,当你执行命令时会出现
ERROR 1820 (HY000): You must reset your password using ALTER USER statement;
# 这是提示你需要修改密码 当你执行了
SET PASSWORD = PASSWORD('root');
# 如果出现
ERROR 1819 (HY000): Your password does not satisfy the current policy requirements
# 你需要执行两个参数来把mysql默认的密码强度的取消了才行 当然也可以把你的密码复杂度提高也行啊
set global validate_password_policy=0;
set global validate_password_mixed_case_count=2;
# 这时你再执行 就ok了
SET PASSWORD = PASSWORD('root');
# 下面再说一下mysql中的字符集的问题
show variables like "%character%";
# 出现如下情况 可以忽略…………
+--------------------------+----------------------------+
| Variable_name      | Value           |
+--------------------------+----------------------------+
| character_set_client   | utf8            |
| character_set_connection | utf8            |
| character_set_database  | utf8            |
| character_set_filesystem | binary           |
| character_set_results  | utf8            |
| character_set_server   | utf8            |
| character_set_system   | utf8            |
| character_sets_dir    | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
#找到mysql的配置文件 加上几句话就ok 在mysqld下面加上
character-set-server=utf8
collation-server=utf8_general_ci
# 在client下面加上
default-character-set=utf


赞助本站





上一篇:linux/centos系统/vps/阿里云、腾讯云、百度云php环境amh/wdcp面板安装
下一篇:linux/centos/Ubuntu/wordpress极致高性能高并发内存缓存优化
学会善用【论坛搜索】功能,很多你要寻找的答案就在这里面;
您需要登录后才可以回帖 登录 | 注册

本版积分规则

发新帖 回复

104

主题

104

帖子

233

街币
更多

精彩推荐

[辅助教程]gaodiy商业辅助学院线程发包VIP教程
[辅助教程]gaodiy商业辅助学院
send 1、画皮 WSASend 1、龙武 2、大宋 3、九刃 4、
魔鬼作坊vip教程辅助制作培训(第四部两套压缩版本) 邪恶二叉树游戏辅助
魔鬼作坊vip教程辅助制作培训(
第四款VIP邪恶二叉树游戏智辅课程 这套课程主要讲解三四
易了千名DNF游戏辅助系列VIP教程(两部合辑版)
易了千名DNF游戏辅助系列VIP教
易了千名DNF游戏辅助系列VIP教程(第一部) 目录: 第01集
魔鬼作坊vip教程辅助制作培训(第七部)分析来源与CALL
魔鬼作坊vip教程辅助制作培训(
第七套辅助教程主要讲解游戏数据逆向分析,找CALL和来源!!
魔鬼作坊vip教程辅助制作培训(第十部)网页游戏智辅封包脱机进阶课程
魔鬼作坊vip教程辅助制作培训(
此套课程为网页游戏辅助制作教程,包括网页中FLASH反编译,加密算
新人报到专用贴
新人报到专用贴
==新人报道格式(选填)== 【我的昵称】: 【我的性别
更多

热门帖子

    免责声明:
    在爱好街发布的文章与主题属会员个人意见,与本站立场无关,文章内容由作者与爱好街享有相关版权,如需转载请注明出处或取得会员与本站的许可,否则本站将追究相应的法律责任,如部分内容有侵犯任何版权问题,请立即告知本站,本站将及时予以删除并致以最深的歉意。另外不得将本站内容用于商业或者非法用途,否则,一切后果请用户自负。

    Mail To:MasTer@AiHaiJie.Com

    快速回复
    快速回复 返回顶部 返回列表