mysql安装(tar包方式)
#添加用户和组
groupadd mysql
useradd -g mysql mysql
#拷贝tar包到/usr/local目录
cd /usr/local
#解压缩tar并重命名
tar -xvf mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz
mv mysql-5.6.40-linux-glibc2.12-x86_64 mysql
#创建软连接
ln -s /usr/local/mysql mysql
#修改权限
chown -R mysql mysql
chgrp -R mysql mysql
#初始化脚本(注意5.7版本mysql_install_db在bin目录中)
mysql/scripts/mysql_install_db --user=mysql
#修改权限,拷贝启动文件
chown -R root /usr/local/mysql/*
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
#加入开启自启动,启动mysql
systemctl enable mysqld
service mysqld start
#将mysql执行文件所在目录加入到.bash_profile中,这样就可以在任意目录登陆mysql了
编辑vi .bash_profile,在PATH后加入相应目录,如/usr/local/mysql/bin/
执行文件 source .bash_profile
#赋权
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' identified by '123456' WITH GRANT OPTION;
FLUSH PRIVILEGES;
启动时可能会报错。服务已经停止但是,pid文件存在
修改data目录权限即可
chown -R mysql:mysql data
MySQL5.7版本安装完成后有个初始密码,按照官方说法是说密码在data目录的日志文件(.err后缀)文件中,结果本人并未找到,百度了一个可用的方法:
1、首先停止mysqld的服务,service mysqld stop
2、使用命令./mysqld_safe --skip-grant-tables启动 这样再次登陆mysql的时候就不需要密码了
3、登陆mysql,使用命令update user set authentication_string=password('12345678') where user='root';修改密码;
注意:5.7版本要求密码不能小于8位,如果这里设置成了6位,下次再登陆后执行任何命令都会报错ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement. 此时再使用命令set password=password("12345678");重新修改密码即可
5.6版本初始化脚本时报错
FATAL ERROR: please install the following Perl modules before executing scripts/mysql_install_db:
Data::Dumper
即有依赖的组件需要安装,使用命令
yum -y install autoconf即可同时安装需要的组件,之后就可以正常初始化脚本了