当前位置:   article > 正文

Centos7安装mysql8.0

Centos7安装mysql8.0

一、卸载MariaDB

  1. #查看版本
  2. rpm –qa | grep mariadb
  3. #卸载
  4. rpm –e --nodeps 文件名
  5. #查看是否卸载干净
  6. rpm –qa |grep mariadb

 

二、安装mysql

1、下载资源包 

官网下载

https://dev.mysql.com/downloads/mysql/

https://img-blog.csdnimg.cn/19b0ecbd2ffe4a33b8838a0c26ecd172.png?x-oss-process=image/watermark,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBAbGZ3aA==,size_20,color_FFFFFF,t_70,g_se,x_16

Wget下载

  1. 1、下载
  2. ​wget https://dev.mysql.com/get/Downloads/MySQL-8.0/mysql-8.0.20-linux-glibc2.12-x86_64.tar.xz
  3. 2、解压
  4. .tar.gz后缀:tar -zxvf 文件名
  5. .tar.xz后缀:tar -Jxvf 文件名
  6. 3、重命名或者建立软连接
  7. # 重命名
  8. mv 原文件夹名 mysql8
  9. # 软链接
  10. ln -s 文件夹名 mysql8
  11. 4、添加PATH变量
  12. 添加PATH变量后,可在全局使用MySQL。编辑 /etc/profile文件,在文件末尾添加如下代码 永久环境变量针对所有用户
  13. 有两种添加方式:export命令临时生效、修改配置文件用久生效;
  14. #临时环境变量,关闭shell后失效,通常用于测试环境
  15. export PATH=$PATH:/data/software/mysql8/bin

三、用户和用户组

1、创建用户组和用户

  1. # 创建一个用户组:mysql
  2. groupadd mysql
  3. # 创建一个系统用户:mysql,指定用户组为mysql
  4. useradd -r -g mysql mysql

2、数据目录

  1. 创建目录
  2. mkdir -p /data/software/mysql8/datas
  3. 赋予权限
  4. # 更改属主和数组
  5. chown -R mysql:mysql /data/software/mysql8/datas
  6. # 更改模式
  7. chmod -R 750 /data/software/mysql8/datas

四、初始化Mysql

1、配置参数

  1. #在/data/software/mysql8/下,创建my.cnf配置文件,用于初始化MySQL数据库
  2. ---------------------------my.cnf------------------------------------------------
  3. [mysql]
  4. # 默认字符集
  5. default-character-set=utf8mb4
  6. [client]
  7. port       = 3306
  8. socket     = /tmp/mysql.sock
  9. [mysqld]
  10. port       = 3306
  11. server-id  = 3306
  12. user       = mysql
  13. socket     = /tmp/mysql.sock
  14. # 安装目录
  15. basedir    = /data/software/mysql8
  16. # 数据存放目录
  17. datadir    = /data/software/mysql8/datas/mysql
  18. log-bin    = /data/software/mysql8/datas/mysql/mysql-bin
  19. innodb_data_home_dir      =/data/software/mysql8/datas/mysql
  20. innodb_log_group_home_dir =/data/software/mysql8/datas/mysql
  21. #日志及进程数据的存放目录
  22. log-error =/data/software/mysql8/datas/mysql/mysql.log
  23. pid-file  =/data/software/mysql8/datas/mysql/mysql.pid
  24. # 服务端使用的字符集默认为8比特编码
  25. character-set-server=utf8mb4
  26. lower_case_table_names=1
  27. autocommit =1
  28.  ##################以上要修改的########################
  29. skip-external-locking
  30. key_buffer_size = 256M
  31. max_allowed_packet = 1M
  32. table_open_cache = 1024
  33. sort_buffer_size = 4M
  34. net_buffer_length = 8K
  35. read_buffer_size = 4M
  36. read_rnd_buffer_size = 512K
  37. myisam_sort_buffer_size = 64M
  38. thread_cache_size = 128
  39. #query_cache_size = 128M
  40. tmp_table_size = 128M
  41. explicit_defaults_for_timestamp = true
  42. max_connections = 500
  43. max_connect_errors = 100
  44. open_files_limit = 65535
  45. binlog_format=mixed
  46. binlog_expire_logs_seconds =864000
  47. # 创建新表时将使用的默认存储引擎
  48. default_storage_engine = InnoDB
  49. innodb_data_file_path = ibdata1:10M:autoextend
  50. innodb_buffer_pool_size = 1024M
  51. innodb_log_file_size = 256M
  52. innodb_log_buffer_size = 8M
  53. innodb_flush_log_at_trx_commit = 1
  54. innodb_lock_wait_timeout = 50
  55. transaction-isolation=READ-COMMITTED
  56. [mysqldump]
  57. quick
  58. max_allowed_packet = 16M
  59. [myisamchk]
  60. key_buffer_size = 256M
  61. sort_buffer_size = 4M
  62. read_buffer = 2M
  63. write_buffer = 2M
  64.        
  65. [mysqlhotcopy]
  66. interactive-timeout
  67. ##############################################################

 2、初始化

  1. mysqld --defaults-file=/data/software/mysql8/my.cnf --basedir=/data/software/mysql8/ --datadir=/data/software/mysql8/datas/mysql --user=mysql --initialize-insecure
  2. defaults-file:指定配置文件(要放在–initialize 前面)
  3. user: 指定用户
  4. basedir:指定安装目录
  5. datadir:指定初始化数据目录
  6. intialize-insecure:初始化无密码

五、启动mysql

查看 MySQL bin路径下,是否包含mysqld_safe,用于后台安全启动MySQL

1、启动服务

  1. # 完整命令
  2. /data/software/mysql8/bin/mysqld_safe --defaults-file=/data/software/mysql8/my.cnf &
  3. # 添加PATH变量后的命令(省略bin目录的路径)
  4. mysqld_safe --defaults-file=/data/software/mysql8/my.cnf &
  5. 查看是否启动
  6. ps –ef | grep mysql

 2、登录

  1. # 无密码登录方式
  2. /data/software/mysql8/bin/mysql -u root --skip-password
  3. # 有密码登录方式(初始的随机密码在/data/mysql8_data/mysql/mysql.log下)
  4. mysql -u root -p
  5. password:随机密码

3、修改密码

  1. 进入mysql之后进行下面操作
  2. # 修改密码
  3. ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';
  4. # 刷新权限
  5. FLUSH PRIVILEGES;
  6. #退出
  7. exit

4、设置允许远程登录

  1. mysql> use mysql
  2. mysql> update user set user.Host='%'where user.User='root';
  3. mysql> flush privileges;
  4. mysql> quit

六、数据库导入、导出

1、数据库导入

  1. 使用 source 命令需要我们先登录到 mysql 中,并创建一个空的数据库:
  2. mysql> create database abc;      # 创建数据库
  3. mysql> use abc;                  # 使用已创建的数据库
  4. mysql> set names utf8;           # 设置编码
  5. mysql> source /home/fairy/桌面/job.sql  # 导入备份数据库
  6. 注意你备份的 sql 文件路径。
  7. 使用 mysql 命令导入数据库格式如下:
  8. mysql -u用户名 -p 数据库名 < 数据库名.sql
  9. 以下实例将备份的数据库 abc.sql 导入到数据库中:
  10. # mysql -root -job < job.sql

2、数据库导出

  1. Linux 下可以使用 mysqldump 命令来导出数据库,语法格式如下:
  2. mysqldump -u用户名 -p 数据库名 > 数据库名.sql
  3. 以下命令可以导出 abc 数据库的数据和表结构:
  4.  /home/fairy/mysql/bin/mysqldump -uroot -p job > job.sql 按下回车键后会提示输入密码,输入即可。 注意:mysqldump 命令路径是根据你 MySQL 安装路径决定的。
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/AllinToyou/article/detail/336971
推荐阅读
相关标签
  

闽ICP备14008679号