centos 7 安装 mysql(yum安装)

红太狼 2023-06-23 13:22 141阅读 0赞

CentOS7 一般yum安装包中有自带的mariadb,不过想必大家更喜欢用mysql。
记录一下我在centos7系统上安装mysql5.7的步骤。

1.卸载原系统中的mariadb……

首先执行命令 rpm -qa|grep mariadb查看是否有mariadb的安装包,没有可以无视

format_png

接下来,执行 rpm -e --nodeps mariadb-libs删除它。。。

format_png 1

打开防火墙端口和关闭selinux

  1. firewall-cmd --zone=public --add-port=3306/tcp --permanent
  2. setenforce 0

2. 下载mysql5.7安装包

1.前往官方网站复制yum源链接Mysql官网

format_png 2

format_png 3

执行wget https://dev.mysql.com/get/mysql80-community-release-el7-1.noarch.rpm(即你复制的下载链接)进行下载

format_png 4

2.进行yum源安装

执行 rpm -ivh mysql80-community-release-el7-1.noarch.rpm命令

format_png 5

接下来可以通过yum repolist all | grep mysql查看yum源中的mysql安装包

format_png 6

3.进行mysql安装

可以看到yum源中默认启用的安装包版本为MySQL8.0,如果需要切换为5.7,需要运行以下命令;

  1. yum-config-manager --disable mysql80-community
  2. yum-config-manager --enable mysql57-community

注意:yum-config-manager默认使用的是python2版本环境,如果用户使用这个命令时报错,可能是因为当前默认python版本为python3版本。需要在/bin/yum-config-manager文件中修改文件头#!/usr/bin/python -tt#!/usr/bin/python2 -tt

format_png 7

接下来可以开始进行安装步骤,执行命令

  1. yum -y install mysql-community-server

进行安装,需要依赖安装时选择y就ok

修改配置文件

  1. # For advice on how to change settings please see
  2. # http://dev.mysql.com/doc/refman/8.0/en/server-configuration-defaults.html
  3. [mysqld]
  4. #
  5. # Remove leading # and set to the amount of RAM for the most important data
  6. # cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
  7. # innodb_buffer_pool_size = 128M
  8. #
  9. # Remove the leading "# " to disable binary logging
  10. # Binary logging captures changes between backups and is enabled by
  11. # default. It's default setting is log_bin=binlog
  12. # disable_log_bin
  13. #
  14. # Remove leading # to set options mainly useful for reporting servers.
  15. # The server defaults are faster for transactions and fast SELECTs.
  16. # Adjust sizes as needed, experiment to find the optimal values.
  17. # join_buffer_size = 128M
  18. # sort_buffer_size = 2M
  19. # read_rnd_buffer_size = 2M
  20. #
  21. # Remove leading # to revert to previous value for default_authentication_plugin,
  22. # this will increase compatibility with older clients. For background, see:
  23. # https://dev.mysql.com/doc/refman/8.0/en/server-system-variables.html#sysvar_default_authentication_plugin
  24. # default-authentication-plugin=mysql_native_password
  25. [mysqld]
  26. # 设置3306端口
  27. port=3306
  28. # 设置mysql的安装目录
  29. basedir=/usr
  30. # 设置mysql数据库的数据的存放目录
  31. datadir=/var/lib/mysql
  32. # 允许最大连接数
  33. max_connections=200
  34. # 允许连接失败的次数。
  35. max_connect_errors=10
  36. # 服务端使用的字符集默认为utf8mb4
  37. character-set-server=utf8mb4
  38. collation-server=utf8mb4_general_ci
  39. # 创建新表时将使用的默认存储引擎
  40. default-storage-engine=INNODB
  41. # 默认使用“mysql_native_password”插件认证
  42. #mysql_native_password
  43. default_authentication_plugin=mysql_native_password
  44. #导出限制
  45. secure-file-priv=""
  46. #事件开启
  47. event_scheduler=on
  48. #二进制
  49. log_bin=/var/log/mysql/binlog
  50. binlog_expire_logs_seconds = 4860000
  51. max_binlog_size = 100M
  52. binlog_format=statement
  53. #通用日志
  54. general_log=1
  55. general_log_file=/var/log/mysql/pc.log
  56. #慢查询日志
  57. slow_query_log = on
  58. slow_query_log_file=/var/log/mysql/slow.log
  59. long_query_time = 300
  60. log_queries_not_using_indexes = on
  61. lower_case_table_names = 1
  62. socket=/var/lib/mysql/mysql.sock
  63. log-error=/var/log/mysql/mysqld.log
  64. pid-file=/var/run/mysqld/mysqld.pid
  65. #跳过外部锁定
  66. skip-external-locking
  67. #innodb_buffer_pool_size = 128M
  68. #innodb_log_file_size = 32M
  69. #innodb_log_buffer_size = 8M
  70. innodb_flush_log_at_trx_commit = 1
  71. #key_buffer_size = 32M
  72. #max_allowed_packet = 1024M
  73. #sort_buffer_size = 8M
  74. #read_buffer_size = 768K
  75. #read_rnd_buffer_size = 512K
  76. [mysql]
  77. # 设置mysql客户端默认字符集
  78. default-character-set=utf8mb4
  79. [client]
  80. # 设置mysql客户端连接服务端时默认使用的端口
  81. port=3306
  82. #default-character-set=utf8mb4

创建目录

  1. mkdir -p /var/log/mysql

授权

  1. chown mysql:mysql -R /var/log/mysql
  2. chmod 755 -R /var/log/mysql
  1. 启动mysql服务

执行命令systemctl start mysqld.service 来启动mysql服务,systemctl status mysqld.service 可查看mysql服务运行状态

format_png 8

MySQL服务器初始化(从MySQL 5.7开始):在服务器初始启动时,如果服务器的数据目录为空,则会发生以下情况:

  • 服务器已初始化。
  • 在数据目录中生成SSL证书和密钥文件。
  • 该validate_password插件安装并启用。
  • 'root'@'localhost' 创建一个超级用户帐户。设置超级用户的密码并将其存储在错误日志文件中。要显示它,请使用以下命令:

    grep ‘temporary password’ /var/log/mysql/mysqld.log

format_png 9

通过使用生成的临时密码登录并为超级用户帐户设置自定义密码,尽快更改root密码:

  1. mysql -u root -p

输入以上临时密码

  1. ALTER USER 'root'@'localhost' IDENTIFIED BY '您的密码';

如果临时密码登不进去,则

  1. 修改配置文件my.cnf

    在[mysqld] 下 加上 skip-grant-tables

2.重启mysql

  1. service mysqld restart

3.直接登陆mysql不需要密码

  1. mysql -uroot (直接enter)

4.在mysql中输入

  1. flush privileges

5.然后更改密码

  1. mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';

成功

最后设置开机启动

  1. systemctl enable mysqld

发表评论

表情:
评论列表 (有 0 条评论,141人围观)

还没有评论,来说两句吧...

相关阅读

    相关 centos7(centos7安装)

    怎么为centos7创建挂载点虚拟机11?怎么为centos7创 1、我装了一遍CentOS 7,已定义好挂载点,/,home,swap等安装软件里提供的挂载点,我重新安

    相关 centos7安装

    1、CentOS7安装 选择稍后安装操作系统 然后打开虚拟机设置,在硬件选项卡找到CD/DVD(IDE),右侧选中使用ISO映像文件,点击浏览...按钮选iso文件(推