centOS6.5 MySQL5.7.24安装

 

官网下载mysql安装包 https://dev.mysql.com/downloads/file/?id=481117

选择MySQL5.7的安装包下载完成后上传至Linux服务器

使用命令tar -zxvf mysql-5.7.24-linux-glibc2.12-x86_64.tar.gz解压安装包后再使用命令:

cp -Rf /usr/mysql/mysql-5.7.24-linux-glibc2.12-x86_64/*  /usr/local/mysql更换mysql的目录

建议在mysql根目录使用命令:mkdir data 用于存放数据库一些初始化信息。

在初始化之前我们还要在Linux系统建立一个mysql账号与用户,可以理解为一个登陆凭证,就好像现在物业公司的门禁系统一样
所以mysql数据库源码安装是必须设置一个管理员账户才可以继续的

groupadd mysql  #创建用户组mysql

useradd -r -g mysql mysql #创建mysql用户

可以使用groups mysql 查看是否创建成功

useradd -r -s /sbin/nologin -g mysql -d /usr/local/mysql/    #-r参数表示mysql用户是系统用户,不可用于登录系统,创建用户mysql并将其添加到用户组mysql中

chown -R mysql.mysql /usr/local/mysql/  #改变目录的权限

 

数据库初始化

进入MySQL解压目录 使用命令

bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data进行数据库初始化,

--basedir指向的应该是MySQL的解压目录在5.7.6之前初始化的方法是:bin/mysql_install_db

5.7.6之后的版本初始化数据库不再使用mysql_install_db,而是使用: bin/mysqld --initialize

#将mysql/目录下除了data/目录的所有文件,改回root用户所有
chown -R root .
#mysql用户只需作为mysql-5.7.22/data/目录下所有文件的所有者
chown -R mysql data

复制启动文件

cp support-files/mysql.server /etc/init.d/mysqld

chmod 755 /etc/init.d/mysqld

cp bin/my_print_defaults /usr/bin/ 

修改启动脚本

vi /etc/init.d/my.cnf
修改项为图中方框的部分

 

#加入环境变量,编辑 /etc/profile,这样可以在任何地方用mysql命令了
vi /etc/profile
#添加mysql路径,加入下面内容,按ESC-->:wq保存
export PATH=$PATH:/usr/local/mysql-5.7.22/bin
#刷新立即生效
source /etc/profile

7.修改mysql配置项

vi /etc/my.cnf

配置如下:

[mysqld]
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
socket = /tmp/mysql.sock
user = mysql
tmpdir = /tmp
symbolic-links=0

[mysqld_safe]

log-error = /usr/local/mysq/data/error.log
pid-file = /usr/local/mysql/data/mysql.pid

 8.启动mysql

service mysqld start

如启动失败,删除 /usr/local/mysql-5.7.22/data下所有文件,重新执行./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data,再启动

启动成功后登录发现报错了

使用命令:find / -name mysql.sock发现文件是存在的

然后我想把文件复制过去试试看。发现这条路走不通。

最终找到了解决办法。很简单那就是将usr目录下的mysql.sock文件软连接到tmp目录下

ln -s /usr/local/mysql/data/mysql.sock /tmp/mysql.sock

现在是可以登录了但发现需要密码,原来5.7后MySQL会生成一个随机密码,

我没有找到存放密码的文件,就只能去强制修改密码了。

在my.cnf中加上skip-grant-tables后 service mysqld restart

修改完成后发现可以不用密码直接登录


登录后执行

update mysql.user set authentication_string=PASSWORD('123456') where User='root'; 

flush privileges;

执行成功后将my.cnf 文件改回去,重启MySQL,使用新密码登录,MySQL已安装完成。

但是执行sql的时候发现一直报错,

应该是密码过期了,使用命令alter user user() identified by "123456";重新修改下密码

最后需要补充一下,按照上面的方式安装完成之后还不能进行远程的访问,需要修改允许远程连接,步骤如下:

grant all privileges on *.* to root@'%' identified by '123456' with grant option;

配置完成后发现通过电脑本地的navicat连接该数据库连不上,还有是防火墙的问题

使用命令service iptables stop 关掉防火墙navicat连接成功。所以我们还需要对防火墙的配置进行修改

vi /etc/sysconfig/iptables 新增方框中的配置后重启防火墙。

至此MySQL的安装就完成了。

 

centOS6.5 MySQL5.7.24(2019-4-29安装记录)

1、检查是否已安装过mariadb,若有便删除(linux系统自带的)

 rpm -qa | grep mariadb
 rpm -e --nodeps mariadb-libs-5.5.44-2.el7.centos.x86_64

2、检查是否已安装过mysql,若有便删除(linux系统自带的)

 rpm -qa | grep mysql

 rpm -e --nodeps mysql-libs-5.1.71-1.el6.x86_64

3、检查mysql组和用户是否存在,如无则创建:

 cat /etc/group | grep mysql

 cat /etc/passwd |grep mysql

 groupadd mysql

 useradd -r -g mysql mysql

4、从官网下载mysql安装包,解压后移动到/usr/local/mysql下

5、在mysql下创建data目录

6、更改mysql目录下所有的目录及文件夹所属组合用户

 cd /usr/local/ 
 chown -R mysql:mysql mysql/
 chmod -R 755 mysql/

7、进入MySQL解压目录,编译安装并初始化mysql,记住命令行末尾的密码:

/usr/local/mysql/bin/mysqld --initialize --user=mysql --datadir=/usr/local/mysql/data --basedir=/usr/local/mysql

A temporary password is generated for root@localhost: o0w!.Mdhk>o.

8、启动mysql服务

/usr/local/mysql/mysql-5.7.24-linux-glibc2.12-x86_64/support-files/mysql.server start

9、做个软连接,重启服务

ln -s /usr/local/mysql/support-files/mysql.server /etc/init.d/mysql 
service mysql restart

10、做个软链接,将安装目录下的mysql 放在/usr/bin 目录下

ln -s /usr/local/mysql/bin/mysql /usr/bin

11、登录msyql,输入密码(密码为步骤7初始化生成的密码)

mysql -u root -p

无法登录

   在usr/local/mysql添加my.cnf文件 

   vi /usr/local/mysql/my.cnf

   [mysqld]
  port = 3306
  sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
  skip-grant-tables

 重启mysql

    service mysql restart

   mysql -uroot   

强制修改密码后成功!
 

14、设置开机自启动

1、将服务文件拷贝到init.d下,并重命名为mysql
cp /usr/local/mysql/support-files/mysql.server /etc/init.d/mysqld
2、赋予可执行权限
 chmod +x /etc/init.d/mysqld
3、添加服务
chkconfig --add mysqld
4、显示服务列表
chkconfig --list
5、重启服务器
 reboot

 

mysql yum方式安装(2020-06-10安装记录)

1.检查系统是否已安装过MySQL,如果已安装先卸载

2.使用 yum 命令安装 MySQL 

    # 下载并安装用来配置mysql的yum源的rpm包

  1. wget http://repo.mysql.com/mysql57-community-release-el6-10.noarch.rpm
 
   2.yum -y localinstall mysql57-community-release-el6-10.noarch.rpm
      或
       rpm -Uvh mysql57-community-release-el6-10.noarch.rpm

 # 安装mysql5.7

   yum -y install mysql-community-server

 # 版本查看

    mysql -V

   

 

配置mysql密码与访问权限

   配置mysql前,必须先启动mysql的服务

   service mysqld start

服务启动以后,登陆mysql修改密码 ,因为mysql5.7以后,密码都是随机的,所以需要使用如下命令来查看随机密码,当然也可以去强制修改密码。

   grep "password" /var/log/mysqld.log  

  输入密码登录mysql 

   mysql -u root -p

  修改密码回发小个问题,设置过于简单的密码会报错

   ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';

   

  调整密码复杂度并重新设置密码

   show variables like 'validate_password';

     set global validate_password_policy=0;

     set global validate_password_length=4;//最小值是4,如果小于4会自动设置成

修改登录权限,任何主机

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

flush privileges;

    

使用如下命令,修改 mysql的配置文件

 # vim /etc/my.cnf

 

 

 

 

 

 

  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值