Centos7安装MySQL-5.7.10(tar.gz安装包)
mysql的安装总结版
-
在官网上下载一个***.tar.gz的压缩包(已经编译好的),解压到指定位置,然后 把这个位置和/usr/local/mysql 做一个软连接(ln -s [mysql实际目录] /usr/local/mysql)
-
添加/usr/local/mysql 的一些用户和用户组权限 (之后一切安装和配置的路径将围绕/usr/local/mysql进行)
-
进行初始化命令 ./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize (会显示初始密码)
-
编辑/etc/my.cnf配置文件
-
启动mysql进入mysql,改密码访问权限等.
一、安装包下载
wget https://downloads.mysql.com/archives/get/p/23/file/mysql-5.7.10-1.el7.x86_64.rpm-bundle.tar
二、安装
- 将下载好的安装到解压到/usr/local目录下
tar -zxvf mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz -C /usr/local/
mv mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz/ mysql
注意:
- 最好是将安装包解压到/usr/local目录下,方便后续安装(若解压至其它目录,可以为mysql创建软链接)
ln -s [mysql安装目录的绝对路径] /usr/local/mysql
- 最后改名称为mysql,方便后续安装
- 进入/usr/local目录
cd /usr/local/
- 为centos添加mysql用户组和mysql用户(-s /bin/false参数指定mysql用户仅拥有所有权,而没有登录权限)
groupadd mysql
useradd -r -g mysql -s /bin/false mysql
- 进入安装mysql软件的目录
cd /usr/local/mysql
- 修改当前目录拥有者为新建的mysql用户
chown -R mysql:mysql ./
- 安装mysql
如果出现如下图所示则为安装成功,红线部分为生成的默认密码:
./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --initialize
- 开启mysql服务
./support-files/mysql.server start
如果出现如下错误,则说明mysql配置文件/etc/my.cnf中的路径不对,修改内容如下,datadir和socket都修改成mysql的安装目录下,pid-file和log-error修改为如下目录,增加[client]板块,用于命令行连接mysql数据库。
[mysqld]
datadir=/usr/local/mysql/data
socket=/usr/local/mysql/mysql.sock
# skip-grant-tables 跳过mysql的权限认证
# Disabling symbolic-links is recommended to prevent assorted security risks
symbolic-links=0
# Settings user and group are ignored when systemd is used.
# If you need to run mysqld under a different user or group,
# customize your systemd unit file for mariadb according to the
# instructions in http://fedoraproject.org/wiki/Systemd
[mysqld_safe]
# log-error=/var/log/mariadb/mariadb.log
# pid-file=/var/run/mariadb/mariadb.pid
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[client]
socket=/usr/local/mysql/mysql.sock
default-character-set=utf8
#
# include all files from the config directory
#
!includedir /etc/my.cnf.d
- 重新启开启mysql服务,未报错则成功
./support-files/mysql.server start
- 将mysql进程放入系统进程中
cp support-files/mysql.server /etc/init.d/mysqld
- 重新启动mysql服务
service mysqld restart
- 配置mysql环境变量
vi /etc/profile
export PATH=$PATH:/usr/local/mysql/bin
source /etc/profile
- 使用上述安装过程出现的随机密码登录mysql数据库
- 进入mysql操作行,为root用户设置新密码(我的设置为root)
alter user 'root'@'localhost' identified by 'root';
- 设置允许远程连接数据库
use mysql;
update user set user.Host='%' where user.User='root';
select user,host from user; # 查看修改后的值
- 刷新权限
flush privileges;
- 开启3306防火墙端口,然后即可远程连接mysql
firewall-cmd --zone=public --query-port=3306/tcp # 查看3306端口
firewall-cmd --zone=public --add-port=3306/tcp --permanent:添加端口外部访问权限,开通3306端口号
firewall-cmd --reload # 重载入添加的端口
- 如果还是无法远程连接,查看/etc/my.cnf
找到bind-address = 127.0.0.1这一行
改为bind-address = 0.0.0.0即可
三、主机windows中连接虚拟机CentOS 7中的MySQL
- 打开cmd 输入:ssh root@192.xxx.xx.xxx,输入虚拟机系统的密码,进入到虚拟机系统
- 启动虚拟机的mysql
mysql -uroot -proot