首页 > 数据库 >在linux下安装mysql8.0.22

在linux下安装mysql8.0.22

时间:2023-01-30 18:45:40浏览次数:56  
标签:8.0 log 22 linux 命令 mysql8.0 mysql data

前提准备

第一步:检查是否有安装过mysql

命令:# rpm -qa| grep -I mysql ,使用rpm方式进行验证,其中i表示忽略大小写

 

假如安装过了mysql则需要先卸载

命令:# rpm -e --nodeps xxxx(xxxx代表对应的数据库)

 

删除老版本Mysql的开发文件和库

命令:# rm -rf /etc/my.cnf

命令:# rm -rf /var/lib/mysql

 

第二步:下载对应的源码包进行安装

下载地址:https://downloads.mysql.com/archives/community/

 

软件安装

第一步:解压压缩文件.tar.xz

命令:# tar -zxvf mysql-8.0.22-linux-glibc2.12-x86_64.tar.xz

 

命令:# ll -h(查看压缩文件大小)命令:# du -sh(查看解压后的文件大小)

第二步:解压后的文件重名了,并移动到/opt/mysql目录下

命令:# mv mysql-8.0.22-linux-glibc2.12-x86_64 mysql-8.0.22

 

命令:# mv mysql-8.0.22 /opt/mysql/

 

第三步:创建数据库文件

先将文件目录切换至data目录下:

命令:# cd /data/

命令:# mkdir mysql_data

 

第四步:备份mysql.cnf配置文件

命令:# cp /etc/my.cnf /bak

 

第五步:配置mysql配置文件

清空文件内容,命令:# echo “” > /etc/my.cnf

 

命令:# vim /etc/my.cnf,内容如下:

 

[client]

port = 3306

socket = /data/mysql_data/mysql.sock

default-character-set=utf8mb4

 

[mysql]

disable-auto-rehash #允许通过TAB键提示

default-character-set = utf8mb4

connect-timeout = 10

 

[mysqld]

user=mysql

server-id = 3306

port = 3306

socket = /data/mysql_data/mysql.sock

pid-file = /data/mysql_data/mysql.pid

basedir= /opt/mysql/mysql-8.0.22

datadir= /data/mysql_data

autocommit = 1

default_authentication_plugin=mysql_native_password

character-set-server=utf8mb4

explicit_defaults_for_timestamp=true

lower_case_table_names=1

back_log=103

max_connections=10000

max_connect_errors=100000

table_open_cache=512

external-locking=FALSE

max_allowed_packet=32M

sort_buffer_size=2M

join_buffer_size=2M

thread_cache_size=51

transaction_isolation=READ-COMMITTED

tmp_table_size=96M

max_heap_table_size=96M

long_query_time = 10

slow_query_log = 1

slow_query_log_file=/data/mysql_data/slow.log

sql_mode=STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_ENGINE_SUBSTITUTION

log_error_verbosity=3

log-error = /data/mysql_data/mysql.err

log_output = FILE #参数log_output指定了慢查询输出的格式,默认为FILE,你可以将它设为TABLE,然后就可以查询mysql架构下的slow_log表了

max_binlog_size = 1G

log-bin=/data/mysql_data/mysql-bin

innodb_buffer_pool_size=500M

innodb_data_file_path=ibdata1:100M:autoextend:max:5G #redo

innodb_temp_data_file_path = ibtemp1:100M:autoextend:max:10G

innodb_log_buffer_size=16M

innodb_log_file_size=256M #undo

innodb_log_files_in_group=2

innodb_lock_wait_timeout=50

innodb_file_per_table=1 #独立表空间

log-bin=mysql-bin

server-id=2

innodb_flush_log_at_trx_commit=1

sync_binlog=1

binlog-do-db=mstr

binlog_ignore_db=mysql

binlog_format=mixed

 

第六步:配置环境变量

命令:# vim /etc/profile

内容: export MYSQL_HOME=/opt/mysql/mysql-8.0.22

export PATH=$PATH:$MYSQL_HOME/bin

 

第七步:创建数据库用户及其用户组

命令:# useradd -m mysql(删除用户:userdel 用户名)

命令:# groupadd mysql mysql(删除用户组:groupdel 用户组名)

命令:# chown -R mysql:mysql /data/mysql_data/ (授权数据目录)

 

第八步:配置mysql服务

命令:vim /opt/mysql/mysql-8.0.22/support-files/mysql.server

内容为:basedir=/opt/mysql/mysql-8.0.22

datadir=/data/mysql_data

 

命令:cp /opt/mysql/mysql-8.0.22/support-files/mysql.server /etc/init.d/mysqld

 

第九步:初始化数据库

命令:# /opt/mysql/mysql-8.0.22/bin/mysqld --defaults-file=/etc/my.cnf --basedir=/opt/mysql/mysql-8.0.22 --datadir=/data/mysql_data/ --user=mysql  --initialize

 

第十步:查看初始登录密码

命令:# vim /data/mysql_data/mysql.err

 

找到临时密码并登记

软件启动

第一步:启动数据服务

命令:# service mysqld start

或 # /opt/mysql/mysql-8.0.22/bin/mysqld_safe --defaults-file=/etc/my.cnf &

命令:# ps -ef | grep mysql

 

第二步:登录数据库

命令:# mysql -u root -p   输入密码为临时密码

 

第三步:修改root密码

命令:#  alter user 'root'@'localhost' identified by 'root';

 

第四步:创建数据库、创建用户

命令: # create database datac_sys;

# show databases;

 

命令:# create user ‘datac_sys’@'%' IDENTIFIED BY 'datac_sys';

 

命令:# grant all privileges on datac_sys.* to datac_sys@'%';

注意:grant all privileges on 数据库名称.* to 数据库用户名@'授权范围';

 

第五步:使用创建用户登录数据库

命令:# mysql -u datac_sys -p

 

软件关闭

命令:# service mysqld stop

 

标签:8.0,log,22,linux,命令,mysql8.0,mysql,data
From: https://www.cnblogs.com/boy-210929/p/17076965.html

相关文章

  • Microsoft Azure 解决方案:如何创建Linux VM以及安全管理建议?
    51CTO博客地址:https://blog.51cto.com/14669127Azure培训视频地址:https://space.bilibili.com/2000820534企业如果采用云平台管理数据或者部署开发环境,但我们都知道Clo......
  • Linux的多线程下使用c/c++调用Python方法示例
    首先,所有python的函数都是用extern"C"定义的,因此对于C和C++,其使用是一样的。c语言调用python必须要有的API(不管有没有多线程):  PyRun_SimpleString//执行一段......
  • Linux环境aspose插件word转pdf中文乱码解决方案
    问题:在linux服务器使用aspose.word转换word文件为pdf的时候显示中文乱码,但是在window服务器上使用可以正常转换。原因:由于linux服务器缺少对应的中文字体导致文件转换出......
  • Linux 中设置静态的IP
    Topic(Whatigoingtowrite)SettingthestaticIpaddressinlinuxMainInformationFirstlyuseCDenterthelocation/etc/sysconfig/network-scriptsThen,......
  • Linux概述
    Linux概述是内核,基于内核有不同的版本,主要有Ubuntu,RedHat,CentOS最主要的应用领域是服务器Linux目录结构(重要,结构要有印象)/表示根目录,一个根目录下面有子目录......
  • Linux 常用替换命令三种方法(perl、shell、sed)
    举例在文件服务器上有一文件,文件名字:aaa.txt文件内容为:name=guodongsex=nanage=1001、perl:find-name'文件名'|xargsperl-pi-e's|被替换的字符串|替换后的字......
  • linux基础4
    目录linux基础4今日内容概要今日内容详细文件相关信息文件索引信息链接信息系统时间机器克隆定时任务paramiko模块公钥私钥paramiko其他操作代码封装面试题回忆linux基础4......
  • BM22比较版本号
    https://www.nowcoder.com/exam/oj?page=1&tab=%E7%AE%97%E6%B3%95%E7%AF%87&topicId=295解法1.先将字符串中的每个修订号保存到数组里,再依次比较。空间复杂度O(n)时......
  • linux下批量修改文件名
    linux下批量修改文件名源自老男孩教育分享案例,内容做部分精简,自用准备测试数据mkdir/opt/toolscd/opt/toolstouchstu_102999_1_finished.jpgtouchstu_10299......
  • linux ACL权限简单使用
    ACL适用场景:Linux中acl权限全称为accesscontrollist(访问控制列表).acl的作用:除我们熟知的rwx权限以外的,用于单独指定某个用户/用户组的特定访问权限. 用途:可以用......