美文网首页
CentOS7安装mysql5.6.40.tar.gz

CentOS7安装mysql5.6.40.tar.gz

作者: 小土A | 来源:发表于2020-02-01 09:19 被阅读0次

    1.CentOS7一般会自带数据库 mariadb,MariaDB数据库管理系统是MySQL的一个分支,完全兼容mysql但这会影响我们安装mysql,所以在安装mysql前,要把mariadb删除干净

    执行如下命令查看是否有安装 mariadb

    # rpm -qa|grep mariadb

    我的系统上显示已安装

    mariadb-libs-5.5.56-2.el7.x86_64

    需要执行如下命令卸载删除

    # yum remove mariadb-libs-5.5.56-2.el7.x86_64

    2.上传mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz 到 目录 /usr/local

    执行如下命令解压文件; 并重命名解压后的目录为 mysql; 完成后目录为 /usr/local/mysql

    # tar -zxvf  mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz

    3.执行如下命令添加mysql用户组和用户

    # groupadd mysql;

    # useradd -r -g mysql mysql

    4.压缩包解压后里面有个目录是data,即/usr/local/mysql/data,我们就用该目录存放数据库数据

    5.执行如下命令授权 /usr/local/mysql 目录给用户 mysql

    # chown -R mysql:mysql /usr/local/mysql

    6.执行如下命令初始化数据库

    进入mysql目录

    # cd /usr/local/mysql

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

    ******有警告

    [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).

    意思是explicit_defaults_for_timestamp 不推荐默认,所以最好加上该参数值的设置

    改初始化命令如下

    # ./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --explicit_defaults_for_timestamp=true

    ******有报错

    [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.

    [ERROR] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist

    需要先初始化权限相关等数据库表

    执行如下命令

    #./scripts/mysql_install_db --user=mysql  (注意此命令在/usr/local/mysql目录下执行)

    执行成功,此时可以看到/usr/local/mysql目录下生成了my.cnf 文件

    此时再执行

    #./bin/mysqld --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data --explicit_defaults_for_timestamp=true

    最后显示

    ./bin/mysqld: ready for connections.

    Version: '5.6.40'  socket: '/tmp/mysql.sock'  port: 3306  MySQL Community Server (GPL)

    表示数据库安装启动成功

    此时再打开一个ssh会话,登录到服务器

    执行如下命令

    # cd /usr/local/mysql

    # ./bin/mysql

    显示不需要密码就可以链接上mysql服务器,说明mysql服务器安装成功。

    7.如下方法 关闭上一步中成功启动起来的mysql服务器,

    查找mysql服务器的进程

    # ps -ef | grep mysql

    显示如上图 6210 就是已运行的mysql的进程id

    # kill 6210

    此时如果执行 service mysql start 命令,仍旧不能成功启动 mysql服务器,显示报错

    Redirecting to /bin/systemctl start mysql.service

    Failed to start mysql.service: Unit not found.

    这是因为 /etc/init.d 中没有 mysql 的服务

    执行如下命令,复制的同时重命名

    # cp  /usr/local/mysql/support-files/mysql.server  /etc/init.d/mysql

    然后执行

    # service mysql start

    显示

    Starting MySQL. SUCCESS!

    mysql服务成功启动

    另外,也可以用 service mysql stop 来停止mysql服务器了

    8.给mysql root用户设置密码

    上面安装成功的 mysql 不需要密码就可以登录

    下面给mysql 的root用户设置密码

    # mysql

    # use mysql

    # update user set password=password('pwd') where user='root';  (pwd是密码明文)

    # flush privileges;

    # exit;

    此时再输入mysql 已经不能登录mysql服务器了,需要用户名和密码了

    # mysql -u root -p

    按提示输入密码即可登录

    mysql-5.6.40-linux-glibc2.12-x86_64.tar.gz 下载 https://pan.baidu.com/s/195cYwF9TtM7GA2HLlcIRKg

    相关文章

      网友评论

          本文标题:CentOS7安装mysql5.6.40.tar.gz

          本文链接:https://www.haomeiwen.com/subject/iiutxhtx.html