linux下安装mysql5.7

这是我在腾讯云上安装mysql的一些记录node

系统版本:CentOS Linux release 7.4.1708 (Core)mysql

mysql版本:mysql-5.7.25-linux-glibc2.12linux

1、安装前:sql

  1.1 检查linux系统版本:[root@VM_0_14_centos ~]#  cat /etc/system-release数据库

  1.2 检查是否安装了mysql:[root@VM_0_14_centos ~]# rpm -qa | grep mysql  (我机子安装了mysql后再执行该命令,仍是什么都没找到。。。)vim

    卸载已安装的mysql:[root@VM_0_14_centos ~]# rpm -e --nodeps mysqlcentos

2、下载、安装mysql微信

  2.1 软件来源:socket

    [root@VM_0_14_centos ~]#  wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-5.7.22-linux-glibc2.12-x86_64.tar.gz 编码

    或者:连接:https://pan.baidu.com/s/17CyWUAL3cKJ8WK-haFiGtA    提取码:pv68 

  2.2 解压安装包、重命名为mysql并将其移动至/usr/local/mysql

        

  2.3 添加系统用户

    添加 mysql 组和 mysql 用户:

      添加 mysql 组:[root@VM_0_14_centos ~]# groupadd mysql

      添加 mysql 用户:[root@VM_0_14_centos ~]# useradd -r -g mysql mysql

      扩展:

        查看是否存在 mysql 组:[root@VM_0_14_centos ~]# more /etc/roup | grep mysql

        查看 msyql 属于哪一个组:[root@VM_0_14_centos ~]# groups mysql

        查看当前活跃的用户列表:[root@VM_0_14_centos ~]# w

  2.3 检查是否安装libaio

    [root@VM_0_14_centos ~]# rpm -qa | grep libaio

    若没有则安装

      版本检查:[root@VM_0_14_centos ~]# yum search libaio

      安装:[root@VM_0_14_centos ~]# yum -y install libaio

  2.4 安装mysql

    建立mysql配置文件:

      建立/etc/my.cnf 并将并写入配置文件:

      [mysql]
      # 设置mysql客户端默认字符集
      default-character-set=utf8
      socket=/usr/local/mysql/mysql.sock
      [mysqld]
      #skip-name-resolve
      #设置3306端口
      port = 3306
      socket=/usr/local/mysql/mysql.sock
      # 设置mysql的安装目录
      basedir=/usr/local/mysql
      # 设置mysql数据库的数据的存放目录
      datadir=/usr/local/mysql/data
      # 容许最大链接数
      max_connections=200
      # 服务端使用的字符集默认为8比特编码的latin1字符集
      character-set-server=utf8
      # 建立新表时将使用的默认存储引擎
      default-storage-engine=INNODB
      #lower_case_table_name=1
      max_allowed_packet=16M

    在/usr/local/mysql 文件夹内建立data文件夹,用来存放数据

    修改当前目录拥有者为 mysql 用户:[root@VM_0_14_centos ~]# chown -R mysql:mysql ./

    初始化:[root@VM_0_14_centos mysql]# ./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/

    初始化后,系统会自动为mysqlroot用户赋予一个临时密码:红圈中就是,必定要记住,第一次登陆后要用的 

3、配置

  4.1 设置开机启动 

    a. 复制启动脚本到资源目录:[root@VM_0_14_centos mysql]# cp ./support-files/mysql.server /etc/rc.d/init.d/mysqld

    b. 增长 mysqld 服务控制脚本执行权限:[root@localhost mysql]# chmod +x /etc/rc.d/init.d/mysqld

    c. 将 mysqld 服务加入到系统服务:[root@localhost mysql]# chkconfig --add mysqld

    d. 检查mysqld服务是否已经生效:[root@localhost mysql]# chkconfig --list mysqld

      命令输出相似下面的结果:

        mysqld 0:off 1:off 2:on 3:on 4:on 5:on 6:off 

      代表mysqld服务已经生效,在二、三、四、5运行级别随系统启动而自动启动,之后可使用 service 命令控制 mysql 的启动和中止。

      查看启动项:chkconfig --list | grep -i mysql

      删除启动项:chkconfig --del mysql

    e. 启动 mysqld:[root@localhost mysql]# service mysqld start

    报错:

       解决:socket 没找到,八成是/etc/my.cnf中sock配置得有问题, 这样配:socket=/usr/local/mysql/mysql.sock

       配置文件改完后再次启动mysql:service mysqld start 就OK了

    在登陆mysql时再次报错:

      

      执行登陆命令时,系统默认会查找/usr/bin下的命令,若是这个命令不在这个目录下,固然会找不到命令,咱们须要作的就是映射一个连接到/usr/bin目录下。

      这个是由于/usr/local/bin目录下缺失mysql致使,只须要一下方法创建软连接,便可以解决:

         把mysql安装目录,好比/usr/local/mysql/bin/mysql,映射到/usr/bin目录下:

        

     而后再登陆mysql,又报错:

     

     找不到套接字了,首先要知道这个mysql.sock是干吗的: 

      链接localhost一般经过一个Unix域套接字文件进行,通常是/tmp/mysql.sock。若是套接字文件被删除了,本地客户就不能链接。这可能发生在你的系统运行一个cron任务删除了/tmp下的临时文件。

     解决:先执行:[root@VM_0_14_centos ~]# find / -name mysql.sock

     若是能够查找到, 作个软链接就行了

     [root@VM_0_14_centos tmp]# ln -s /usr/local/mysql/mysql.sock /tmp/mysql.sock

  4.2 配置环境变量:

    vim /etc/profile

    加上这一句:export PATH = $PATH:/usr/local/mysql/bin

  4.3 更改密码、配置容许外网链接:

     这时就能够登上去了,可是登录后没法进行任何操做,且外网也没法链接到该mysql:

    改密码三步:

      1: SET PASSWORD = PASSWORD('your new password');

       2: ALTER USER 'root'@'localhost' PASSWORD EXPIRE NEVER;

       3: flush privileges;

    设置外网可连:

    

END!

想了解更多Python关于爬虫、数据分析的内容,欢迎你们关注个人微信公众号:悟道Python

  

相关文章
相关标签/搜索