• 在Linux环境下部署MySql服务


      之前有下载部署过几次,但是每次都会踩一些坑。特此记录在liunx下部署安装mysql的基本步骤:

    1、卸载老版本的mysql

    • find / -name mysql|xargs rm -rf     查找并删除mysql有关的文件

    2、可通过xftp将下载的mysql的安装包上传至linux服务器中,解压至 /usr/local 目录下

    • tar -zxvf mysql-5.6.45-linux-glibc2.12-x86_64.tar.gz -C /usr/local   

    3、先检查是否有mysql用户组和mysql用户,若没有没有需要添加mysql用户组和mysql用户

    • groups mysql     # 检查是否存在mysql用户组和mysql用户,出现下述图片,证明mysql用户组和mysql用户已存在。
    • groupadd mysql       # 添加mysql用户组
    • useradd -r -g mysql mysql       # 添加mysql用户

    4、进入mysql目录更改权限(修改当前目录拥有者为mysql)

    • cd mysql/        # 进入mysql目录
    • chown -R mysql:mysql ./     # 修改当前目录下的群组和用户为mysql

    5、执行安装脚本

    • ./scripts/mysql_install_db --user=mysql    # 执行安装的脚本时,系统报错,具体可见下述图片

    • 解决方法 :安装autoconf库
    • 命令:yum -y install autoconf  # 此包安装时会安装Data:Dumper模块
    • 安装完autoconf库之后,再运行  ./scripts/mysql_install_db --user=mysql 时,可能会出现如下错误。
    • [root@iz2ze3g1c5ttso3f78zgo2z mysql]# ./scripts/mysql_install_db --user=mysql
      Installing MySQL system tables..../bin/mysqld: error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory

    • 若是出现上述错误,需要检查和安装libaio。
    • rpm -qa|grep libaio      # 检查libaio是否安装
    • yum -y install libaio-devel.x86_64  # 安装libaio
    • 最后再次运行 ./scripts/mysql_install_db --user=mysql ,即可安装成功。具体可见附件图片

    • 安装完之后修改当前目录拥有者为root用户,修改data目录拥有者为mysql:
      1. chown -R root:root ./   
      2. chown -R mysql:mysql data

    6、启动mysql,在mysql目录下执行 ./support-files/mysql.server start  ,但是系统报错。原因是log文件无权限,我们可以通过更改配置修改log文件指向,并创建一个log文件来解决

    • vim /etc/my.cnf
    • 修改前:

    • 修改后:

    • 修改内容为:

    [mysqld_safe]
    log-error=/usr/local/mysql/logs/mysqld.log
    pid-file=/var/run/mysql/mysql.pid

    • 创建log文件,并修改文件权限:

    [root@iz2ze3g1c5ttso3f78zgo2z etc]# cd /usr/local/mysql/

    [root@iz2ze3g1c5ttso3f78zgo2z mysql]# mkdir logs

    [root@iz2ze3g1c5ttso3f78zgo2z mysql]# cd logs                                             

    [root@iz2ze3g1c5ttso3f78zgo2z logs]# echo "" > /usr/local/mysql/logs/mysqld.log   

    [root@iz2ze3g1c5ttso3f78zgo2z logs]# chown -R mysql:mysql /usr/local/mysql/logs/mysqld.log

    [root@iz2ze3g1c5ttso3f78zgo2z logs]# cd /usr/local/mysql

    [root@iz2ze3g1c5ttso3f78zgo2z mysql]# ./support-files/mysql.server start

     7、登录mysql ,可使用该命令进行登录  ./bin/mysql -h127.0.0.1 -uroot -p

    8、登录成功之后,需要设置mysql的密码

    • ./bin/mysqladmin -u root password 'root'  # 将root用户的密码设置为“root”

    设置完成之后,可通过 select user,host,password from mysql.user;

     

    也可以将root用户在其他host下的登录密码也设置一下,通过这种方式(update user set password=passworD("root") where user='root';)修改密码后需要允许一下:flush privileges; 

    • update user set password=passworD("root") where user='root';
    • flush privileges;

    9、增加远程登录权限,此时我们还只能通过本地机器登录mysql, 无法在别的机器上进行远程登录,想要远程登录还要权限开启:

    • mysql> grant all privileges on *.* to root@'%' identified by 'root';
    • Query OK, 0 rows affected (0.00 sec)
    • mysql> flush privileges;
    • Query OK, 0 rows affected (0.00 sec)

    10、使用sqlyog连接部署的mysql服务,检查mysql是否能够被远程连接。


    ———————————————— 

    版权声明:本文为CSDN博主「rchm8519」的原创文章,遵循CC 4.0 by-sa版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/rchm8519/article/details/84194562

  • 相关阅读:
    HTTP POST GET 本质区别详解
    本人完成的代码生成器,请多提些建议
    .net实现控件视图状态ViewState
    专门用于微信公众平台的Javascript API导言
    [学习笔记]验证上传文件后缀名类型
    专门用于微信公众平台的Javascript API
    1个月成为HTML5前端工程师
    js中用正则表达式 过滤特殊字符, 校验所有输入域是否含有特殊符号
    SharePoint 2010 根据不同的用户权限显示不同的导航
    (原创)Sharepoint webpart中调用web service报错
  • 原文地址:https://www.cnblogs.com/wanglle/p/11419065.html
Copyright © 2020-2023  润新知