记centos 安装 mysql5.7.23.tar.gz教程
1、下载tar包,这里使用wget从官网下载
wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
2、将mysql安装到/usr/local/mysql下
# 解压
tar -xvf mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz
# 移动
mv mysql-5.7.22-linux-glibc2.12-x86_64 /usr/local/
# 重命名
mv /usr/local/mysql-5.7.22-linux-glibc2.12-x86_64 /usr/local/mysql
3、新建data目录
mkdir /usr/local/mysql/data
4、新建mysql用户、mysql用户组
# mysql用户组
groupadd mysql
# mysql用户
useradd mysql -g mysql
5、将/usr/local/mysql的所有者及所属组改为mysql
chown -R mysql.mysql /usr/local/mysql
6,初始化
cd /usr/local/mysql
[root@dbserver mysql]# bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
初始化后会生成一串临时密码,作为首次登陆密码
# 如果出现以下错误:
/usr/local/mysql/bin/mysqld: error while loading shared libraries: libnuma.so.1: cannot open shared object file: No such file or directory
# 则执行以下命令:
yum -y install numactl
# 完成后继续安装:
/usr/local/mysql/bin/mysqld --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data --initialize
7、配置my.cnf
接下来进入/usr/local/mysql/support-files/目录下
查看是否存在my-default.cnf文件,如果存在直接copy到/etc/my.cnf文件中
[root@dbserver mysql]# cp -a ./support-files/my-default.cnf /etc/my.cnf
- 1
如果不存在my-default.cnf文件,则在/etc/目录下创建my.cnf,并写入以下内容,例如我的是这样的:
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
basedir=/usr/local/mysql
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/mysql.sock #找到sock文件的实际位置
log-error=/var/log/mysqld.log
pid-file=/usr/local/mysql/data/mysql.pid # 找到pid的实际位置
<3>获取初始登录密码
这个的初始登录密码将不会在执行第二步之后被输出到命令行中,而是会被存放在错误日志中。错误日志路径就是你在my.cnf中配置的 log-error=/var/log/mysqld.log
执行:
cat /var/log/mysqld.log
能够看到一行信息,例如我的是:
2017-11-29T01:55:23.192210Z 1 [Note] A temporary password is generated for root@localhost: Q5Sck93kdK/*
localhost: 后面的一串就是你mysql登录的初始密码。
⚠️如果你的初始密码丢失,可以备份data数据:mv /usr/local/mysql/data data.bak 或者直接删除data数据:rm -rf /usr/local/mysql/data 然后初始化数据库:
[root@dbserver mysql]# bin/mysqld --initialize --user=mysql 重新生成初始密码然后查看并记住。此处还有其他的方法,大家可以尝试一下,参考:http://blog.csdn.net/ljbmxsm/article/details/50612777
8、把mysql放到本地系统服务中
命令: cp -a ./support-files/mysql.server /etc/init.d/mysqld
如果mysql 安装目录不在、usr/local/mysql下需要修改mysql的配置文件 如:本人的安装目录是在/software/mysql下则配置如下
修改Mysql配置文件
if test -z "$basedir"
then
basedir=/usr/local/mysql
bindir=/usr/local/mysql/bin
if test -z "$datadir"
then
datadir=/usr/local/mysql/data
fi
sbindir=/usr/local/mysql/bin
libexecdir=/usr/local/mysql/bin
else
bindir="$basedir/bin"
if test -z "$datadir"
then
datadir="$basedir/data"
fi
sbindir="$basedir/sbin"
libexecdir="$basedir/libexec"
fi
修改后
if test -z "$basedir"
then
basedir=/software/mysql
bindir=/software/mysql/bin
if test -z "$datadir"
then
datadir=/data/mysql
fi
sbindir=/software/mysql/bin
libexecdir=/software/mysql/bin
else
bindir="$basedir/bin"
if test -z "$datadir"
then
datadir="$basedir/data"
fi
sbindir="$basedir/sbin"
libexecdir="$basedir/libexec"
fi
保存退出
9、启动mysql
#/etc/init.d/mysqld start
ERROR! The server quit without updating PID file (/software/mysql/mysqld.pid).
因为新版本的mysql安全启动安装包只认/usr/local/mysql这个路径。
解决办法:
方法1、建立软连接
例 #cd /usr/local/mysql
#ln -s /sofware/mysql/bin/myslqd mysqld
方法2、修改mysqld_safe文件(有强迫症的同学建议这种,我用的这种)
# vim /software/mysql/bin/mysqld_safe
将所有的/usr/local/mysql改为/software/mysql
保存退出。(可以将这个文件拷出来再修改然后替换)
错误代码:Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock '
mysql.sock根本就不在 /var/lib/mysql 目录下。自己的目录在 /tmp/mysql.sock
于是做了一个连接。
ln -s /tmp/mysql.sock /var/lib/mysql/mysql.sock
10、启动并登陆mysql
启动mysql
# 、/etc/init.d/mysqld start
登陆
mysql -u root -p
会提示输入登陆密码,输入初始化时候的临时密码就可以了
ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
解决方法
修改vi /etc/my.cnf,增加skip-grant-tables可以免密码登录mysql
use mysql ;
update user set authentication_string=PASSWORD("123456") where user='root';
再次修改vi /etc/my.cnf,注释skip-grant-tables,重启mysql
mysql -uroot -p123456登录
注:mysql5.7后将password字段调整为authentication_string
记centos 安装 mysql5.7.23.tar.gz教程的更多相关文章
- centos 安装mysql5.7.18.tar.gz
1.解压mysql.tar.gz tar -zxvf mysql--linux-glibc2.-x86_64.tar.gz 2.添加mysql用户组和mysql用户,命令如下: groupadd m ...
- Linux下编译安装mysql-5.0.45.tar.gz
安装环境:VMware9(桥接模式) + Linux bogon 2.6.32-642.3.1.el6.x86_64(查看linux版本信息:uname -a) 先给出MySQL For Linux ...
- 手动安装mysql-5.0.45.tar.gz
Linux下编译安装 安装环境:VMware9(桥接模式) + Linux bogon 2.6.32-642.3.1.el6.x86_64(查看linux版本信息:uname -a) 先给出MySQL ...
- 源码安装mysql-5.6.32.tar.gz
http://mirrors.sohu.com/mysql/MySQL-5.6/mysql-5.6.32.tar.gz 安装依赖包: #yum install wget bison gcc gcc-c ...
- MySql:Linux下安装MySQL-5.7.12.tar.gz
一 官网下载 mysql-5.7.12-linux-glibc2.5-x86_64.tar.gz 目前最新为5.7.16,可以直接下载mysql-5.7.16-linux-glibc2.5-x86_ ...
- 【Centos7】安装mysql5.7.16.tar.gz
操作系统 centos7.1 云主机 1.下载好了压缩包到windows电脑上 2.使用Smartty的SCP传输到云主机的/home/xxx/下 3.解压 tar xvf mysql-5.7.16 ...
- Centos 安装 Node-v12.17.0-linux-x64.tar.gz
wget https://nodejs.org/dist/v12.17.0/node-v12.17.0-linux-x64.tar.gz tar -zxf node-v12.17.0-linux-x6 ...
- CentOS6.5_64bit下编译安装MySQL-5.6.23
转载请注明出处:http://blog.csdn.net/guoyjoe/article/details/44785511 ************************************** ...
- linux下mysql-5.5.27.tar.gz源程序包安装实例
研究了好几天,终于把mysql装上了,现在来做下小结. 系统环境:fedora8 虚拟机. 1.检查安装使用的编译工具gcc是否存在,如果不存在则要下载安装 # gcc -v 2.卸载低版本的mysq ...
随机推荐
- 阿里云ECS主机内核调优
#阿里云内核调优 cat /etc/sysctl.conf vm.swappiness = 0net.ipv4.neigh.default.gc_stale_time=120 # see detail ...
- Linux 调度器发展简述
引言 进程调度是操作系统的核心功能.调度器只是是调度过程中的一部分,进程调度是非常复杂的过程,需要多个系统协同工作完成.本文所关注的仅为调度器,它的主要工作是在所有 RUNNING 进程中选择最合适的 ...
- 读书笔记--MapReduce 适用场景 及 常见应用
原文:http://blog.csdn.net/smile0198/article/details/20578389 1.MR解决的问题的特点 MR是应大数据的背景产生,其解决的问题的共性为:大问 ...
- BST数据结构题
给定BST.改动BST,使得每一个点都是大于他的结点的值之和 关键是这题递归參数怎么设计,每一个点比他大的有两快.一个是右子书(假设有的话),还有一个是祖先里面比他大的,假设直接用这两个的话,找不到递 ...
- jenkins+testNG
1.项目的pom.xml要配置插件,同时指定testng.xml文件的位置.就被这个卡了好久 <properties> <maven-surefire-plugin.version& ...
- Windows Vista如何让梦幻桌面支持更多格式
Windows Vista 梦幻桌面(DreamScene)到底能不能支持除了Mpeg/mpg以外的格式? 很多人说梦幻桌面的视频格式有限,像AVI.RM.RMVB就不能做成梦幻桌面!也有很多朋友着急 ...
- Moving Tables-贪心
id=19566" target="_blank" style="color:blue; text-decoration:none">Movin ...
- ORA-12519, TNS:no appropriate service handler found(数据库上当前的连接数目已经超过最大值)
报错: ORA-12519, TNS:no appropriate service handler foundThe Connection descriptor used by the client ...
- Android app启动耗时分析
前言 app启动耗时过长的话,无论你的app里面的内容多么丰富有趣,作为一个用户,首先是没有耐心去等待的,如果我是一个用户,我会这样想:这是什么垃圾公司出的什么烂app,再等2s不进来就卸载,黑人问号 ...
- 算法笔记_097:蓝桥杯练习 算法提高 P1001(Java)
目录 1 问题描述 2 解决方案 1 问题描述 当两个比较大的整数相乘时,可能会出现数据溢出的情形.为避免溢出,可以采用字符串的方法来实现两个大数之间的乘法.具体来说,首先以字符串的形式输入两个整 ...