当前位置:文档之家› CentOS7 安装mysql-5.7.10(glibc版)

CentOS7 安装mysql-5.7.10(glibc版)

CentOS7  安装mysql-5.7.10(glibc版)
CentOS7  安装mysql-5.7.10(glibc版)

CentOS7 安装mysql-5.7.10(glibc版)

注:所有shell命令都以root用户执行。随着mysql版本的更新,新版本的安装方式会有所更改,可以参考mysql压缩包中的INSTALL-BINARY文件。

一、从网上下载所需的版本

shell> cd /home/user/Downloads

shell> wget https://www.doczj.com/doc/0017578192.html,/mysql/所需版本

此处我下载的是MySQL-5.7下的mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz

二、解压缩文件并移动到指定目录

在home文件夹下创建一个mysql文件夹,作为存放mysql文件的目录

shell> cd /home

shell> mkdir mysql

回到保存下载压缩文件的目录解压压缩文件

shell> cd /home/user/Downloads

shell> tar -zxvf mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz

移动文件到指定目录

shell> mv mysql-5.7.10-linux-glibc2.5-x86_64 /home/mysql/mysql-5.7.10

三、安装运行mysql所需的包

shell> yum search libaio

shell> yum install libaio

四、安装及配置mysql(参照mysql文件中的INSTALL-BINARY)

shell> groupadd mysql #添加一个mysql用户组

shell> useradd -r -g mysql -s /bin/false mysql #设置-s /bin/false表示mysql不能作为登入用户

shell> cd /usr/local

shell> ln -s /home/mysql/mysql-5.7.10 mysql #在/usr/local/目录下创建一个mysql链接shell> cd mysql

shell> mkdir data #作为存放数据的目录

shell> chmod 770 data

shell> chown -R mysql .

shell> chgrp -R mysql .

shell> bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data # MySQL 5.7.6 and up

执行该命令后,注意最后一行的[Note]信息

[Note] A temporary password is generated for root@localhost: )#Fzu)-oj6f8

生成的初始密码在首次以root用户登入时使用。

shell> bin/mysql_ssl_rsa_setup --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data # MySQL 5.7.6 and up

shell> chown -R root .

shell> chown -R mysql data

shell> cd /var/log

shell> mkdir mariadb #作为存放数据库运行日志的文件夹

shell> cd /usr/local/mysql/

shell> bin/mysqld_safe --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data &

将mysql加入到可控制启动服务的文件夹内,并命名mysql,即service可控制的服务名,届时可用service mysql start|stop控制启动及关闭mysql

shell> cp support-files/mysql.server /etc/init.d/mysql

到/etc目录下配置https://www.doczj.com/doc/0017578192.html,f

shell> cd /etc/

shell> vi https://www.doczj.com/doc/0017578192.html,f #修改或添加以下内容

basedir=/usr/local/mysql

datadir=/usr/local/mysql/data

socket=/tmp/mysql.sock

shell> vi /etc/profile #配置环境变量添加如下内容

export MYSQL_HOME="/usr/local/mysql"

export PATH="$PATH:$MYSQL_HOME/bin"

shell> . /etc/profile #使配置及时生效

至此可用service mysql start来启动mysql数据库。

配置开机启动mysql服务

shell> chkconfig --add mysql

shell> chkconfig --level 2345 mysql on

五、首次登入mysql

shell> mysql -u root -p

Enter password:输入之前生成的临时密码

mysql> SET PASSWORD = PASSWORD('123456');

六、其他配置

a)开启防火墙mysql 3306端口的外部访问

CentOS升级到7之后,使用firewalld代替了原来的iptables。下面记录如何使用firewalld 开放Linux端口

--zone : 作用域,网络区域定义了网络连接的可信等级。这是一个一对多的关系,这意味着一次连接可以仅仅是一个区域的一部分,而一个区域可以用于很多连接--add-port : 添加端口与通信协议,格式为:端口/通讯协议,协议是tcp 或udp

--permanent : 永久生效,没有此参数系统重启后端口访问失效

shell> firewall-cmd --zone=public --add-port=3306/tcp --permanent

shell> firewall-cmd --reload #重启防火墙

附1:开启3306端口的另外一种方式

附2:firewall防火墙默认的几个zone

b)几个mysql的GRANT例子(mysql的用户,非Centos用户)

允许使用用户名root密码123456从任何主机连接到mysql服务器

该创建的root账号只是从外部访问的账号,与内部linux访问该mysql时所用root 不同,内部linux访问该mysql的root账号也不是linux的系统root账号

mysql>GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;

给来自192.168.155.1的用户user1分配可对数据库dbname的tablename表进行SELECT,INSERT,UPDATE,DELETE,CREATE,DROP等操作的权限,并设定密码为123456。

对表操作权限还有好多如ALTER等

mysql>GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP ON dbname.tablename TO 'user1'@'192.168.155.1' IDENTIFIED BY '123456';

给来自192.168.155.1的用户user2分配可对数据库dbname所有表进行所有操作的权限,并设定口令为123456。

mysql>GRANT ALL PRIVILEGES ON dbname.* TO 'user2'@'192.168.155.1' IDENTIFIED BY '123456';

给来自192.168.155.1的用户user3分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123456。

mysql>GRANT ALL PRIVILEGES ON *.* TO 'user3'@'192.168.155.1' IDENTIFIED BY '123456';

给本机用户user4分配可对所有数据库的所有表进行所有操作的权限,并设定口令为123456。

mysql>GRANT ALL PRIVILEGES ON *.* TO 'user4'@'localhost' IDENTIFIED BY '123456';

刷新权限

mysql>FLUSH PRIVILEGES;

c)

参考:

1、mysql安装文件中的INSTALL-BINARY文件

2、CentOS7安装mysql5.6.26 作者昵称:风吹屁股凉冰冰

https://www.doczj.com/doc/0017578192.html,/dreamhome/p/4716425.html

相关主题
文本预览
相关文档 最新文档