Centos7.x 安装MYSQL

  1. # 安装依赖包
  2. yum -y install libaio
  3. # 创建mysql 用户组和用户
  4. groupadd mysql
  5. useradd -g mysql mysql
  6. # 创建需要文件夹和文件
  7. mkdir -p /usr/local/resources/mysql-5.7.27/{data,log,etc,run}
  8. touch /usr/local/resources/mysql-5.7.27/log/{mysql_error.log,mysql_bin.log,mysql_slow_query.log}
  9. chown -R mysql:mysql /usr/local/resources/mysql-5.7.27
  10. chmod 750 /usr/local/resources/mysql-5.7.27/{data,log,etc,run}
  11. # 配置环境变量
  12. export MYSQL_HOME=/usr/local/resources/mysql-5.7.27
  13. export PATH=.:$MYSQL_HOME/bin:$PATH
  14. # 配置/etc/my.cnf文件
  15. [client]
  16. port = 3306
  17. socket = /usr/local/resources/mysql-5.7.27/run/mysql.sock
  18. [mysqld]
  19. port = 3306
  20. socket = /usr/local/resources/mysql-5.7.27/run/mysql.sock
  21. pid_file = /usr/local/resources/mysql-5.7.27/run/mysql.pid
  22. datadir = /usr/local/resources/mysql-5.7.27/data
  23. default_storage_engine = InnoDB
  24. max_allowed_packet = 128M
  25. max_connections = 2048
  26. open_files_limit = 65535
  27. skip-name-resolve
  28. lower_case_table_names=1
  29. character-set-server = utf8mb4
  30. collation-server = utf8mb4_unicode_ci
  31. init_connect='SET NAMES utf8mb4'
  32. innodb_buffer_pool_size = 128M
  33. innodb_log_file_size = 128M
  34. innodb_file_per_table = 1
  35. innodb_flush_log_at_trx_commit = 0
  36. key_buffer_size = 16M
  37. log-error = /usr/local/resources/mysql-5.7.27/log/mysql_error.log
  38. log-bin = /usr/local/resources/mysql-5.7.27/log/mysql_bin.log
  39. slow_query_log = 1
  40. slow_query_log_file = /usr/local/resources/mysql-5.7.27/log/mysql_slow_query.log
  41. long_query_time = 5
  42. tmp_table_size = 16M
  43. max_heap_table_size = 16M
  44. query_cache_type = 0
  45. query_cache_size = 0
  46. server-id=1
  47. # 初始化MYSQL
  48. mysqld --initialize --user=mysql --basedir=/usr/local/resources/mysql-5.7.27 --datadir=/usr/local/resources/mysql-5.7.27/data
  49. # 此时会生成一个root的临时密码,默认在mysql_error.log文件中
  50. grep 'temporary password' /usr/local/resources/mysql-5.7.27/log/mysql_error.log
  51. # 注:有可能并没有写进文件,直接在执行后的界面显示
  52. # 配置服务
  53. cp /usr/local/resources/mysql-5.7.27/support-files/mysql.server /etc/init.d/mysqld
  54. # 修改/etc/init.d/mysqld文件
  55. vim /etc/init.d/mysqld
  56. # 修改basedir和datadir参数值
  57. basedir = /usr/local/resources/mysql-5.7.27
  58. datadir = /usr/local/resources/mysql-5.7.27/data
  59. # 添加服务
  60. chkconfig --add mysqld
  61. # 设置开机自启和查看
  62. chkconfig mysqld on
  63. chkconfig mysqld --list
  64. # 启动服务
  65. service mysqld start
  66. # 查看服务状态
  67. service mysqld status
  68. # 注意: 如果是Centos8安装的话, 需要添加以下语句
  69. ln -s /usr/lib64/libtinfo.so.6 /usr/lib64/libtinfo.so.5
  70. ln -s /usr/lib64/libncurses.so.6 /usr/lib64/libncurses.so.5
  71. # 修改root账户密码
  72. mysql -u root -p 初始化临时密码
  73. ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
  74. flush privileges;
  75. exit;
  76. # 重新登录mysql验证
  77. # 修改全网登录配置
  78. use mysql;
  79. update user set host='%' where host='localhost';
  80. flush privileges;
  81. quit;