当前位置:   article > 正文

无root权限情况下 普通用户一键安装mysql8.0.27_普通用户安装mysql

普通用户安装mysql

电力行业,linux服务器基本不给root权限,安全加固或者整改都会要求禁用root,所以一般应用的安装应该尽量使用非root用户来部署mysql数据库

我的大致步骤就是下载官方mysql对应generic的安装包解压,然后进入解压目录,基于当前目录创建初始化脚本,配置my.cnf文件,执行初始化建库,登录root改密。脚本如下:

  1. wget https://cdn.mysql.com/archives/mysql-8.0/mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz
  2. xz -c -d mysql-8.0.27-linux-glibc2.12-x86_64.tar.xz |tar xf -
  3. cd mysql-8.0.27-linux-glibc2.12-x86_64
  4. # 清理重建数据 日志 临时目录
  5. rm -rf ./data/* ./logs/* ./tmp/*
  6. mkdir data logs tmp
  7. # 创建配置文件my.cnf
  8. cat <<EOF>my.cnf
  9. [mysqld]
  10. port=3306
  11. basedir=$(pwd)
  12. datadir=$(pwd)/data
  13. socket=$(pwd)/mysql.sock
  14. [client]
  15. socket=$(pwd)/mysql.sock
  16. [mysql]
  17. socket=$(pwd)/mysql.sock
  18. [mysqladmin]
  19. socket=$(pwd)/mysql.sock
  20. [mysqldump]
  21. socket=$(pwd)/mysql.sock
  22. EOF
  23. ln -f $(pwd)/my.cnf ~/.my.cnf
  24. # 创建启动脚本
  25. cat <<EOF>start.sh
  26. #!/bin/bash
  27. base=$(pwd)
  28. source ~/.bashrc
  29. cd \${base}
  30. nohup ./bin/mysqld_safe --defaults-file=\${base}/my.cnf --user=eapp --basedir=\${base} --datadir=\${base}/data --log-error=\${base}/logs/err.log --socket=\${base}/mysql.sock 2>&1 &
  31. EOF
  32. # 创建停止脚本
  33. cat <<EOF>stop.sh
  34. #!/bin/bash
  35. base=$(pwd)
  36. source ~/.bashrc
  37. cd \${base}
  38. ./bin/mysqladmin -uroot -p shutdown
  39. EOF
  40. # 授权脚本可执行权限
  41. chmod 0777 start.sh stop.sh
  42. # 初始化建库 -I 参数是创建随机密码,注意观察终端数据。也可以替换成 --initialize-insecure 这样就不会创建随机密码。
  43. ./bin/mysqld --defaults-file=$(pwd)/my.cnf --initialize-insecure --console --tmpdir=$(pwd)/tmp --pid-file=$(pwd)/mysql.pid --socket=$(pwd)/mysql.sock
  44. # 启动数据库
  45. ./start.sh
  46. # 登录数据库并修改密码为123456,如果用的-I参数初始化,则需要加上-p输入终端打印的随机密码。这里加上sleep 3 是为了防止上面库还没启动就执行登录操作了,会提示登录失败
  47. sleep 3
  48. ./bin/mysql -uroot <<EOF
  49. show databases;
  50. alter user user() identified by '123456';
  51. EOF
  52. # 登录测试
  53. ./bin/mysql -uroot -p123456 <<EOF
  54. select 1;
  55. EOF
  56. # 停止数据库
  57. ./stop.sh

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/代码探险家/article/detail/872314
推荐阅读
相关标签
  

闽ICP备14008679号