使用二进制包安装mysql

Mysql官网二进制包下载地址

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

选择对应版本下载

根据操作系统选择

会有一步让注册的  点击“No thanks, just start my download.” 即可直接下载

常用目录介绍

#笔者自己的习惯
/data/ /data/mysql 安装目录 /data/mysql33306 数据目录 /data/mysql3306/mysql.sock /data/mysql/ini/my.cnf /data/mysql3306/error.log /data/mysql3306/mysql3306.pid

安装所需组件

yum install libaio

解压并创建数据目录

mkdir -p /data/mysql
mkdir -p /data/mysql3306/
tar -zxvf mysql-5.7.16-linux-glibc2.5-x86_64.tar.gz
mv mysql-5.7.16-linux-glibc2.5-x86_64 /data/mysql 

添加mysql环境变量

##注意 将自己安装的mysql的环境变量添加在前边,否则直接使用mysql的相关命令的时候如果用的是系统自带的有时候会报错
echo 'export PATH=/data/mysql/bin:$PATH' >>/etc/profile
source /etc/profile
which mysql  查看时候生效  
#/data/mysql/bin/mysql

添加mysql用户

groupadd mysql
useradd -r -g mysql -s /bin/false mysql

添加目录权限

chown mysql:mysql /data/mysql3306 -R
chown mysql:mysql /data/mysql -R

配置myql文件

[client]
default-character-set = utf8mb4

[mysql]
default-character-set = utf8mb4

[mysqld]
character-set-server=uft8mb4
basedir = /data/mysql 
datadir = /data/mysql3306/
port = 3306
socket = /data/mysql3306/mysql.sock
pid-file = /data/mysql3306/mysql3306.pid

log-error = /data/mysql3306/error.log
server-id=1
slow-query-log = 1
long_query_time = 0.2
slow-query-log-file = /data/mysql3306/slow-queries.log

max_connections = 800
max_connect_errors = 100000

table_open_cache = 256
query_cache_size = 2M

character_set_server=utf8
init_connect='SET NAMES utf8'

innodb_file_per_table=1
innodb_buffer_pool_size = 2048M
innodb_data_file_path = ibdata1:1024M:autoextend

innodb_flush_log_at_trx_commit=1 
innodb_log_buffer_size = 16M
innodb_log_file_size = 256M
innodb_log_files_in_group = 2 
innodb_max_dirty_pages_pct = 50 

log-bin = mysql-bin
sync_binlog=1
binlog-format=row
expire_logs_days = 10

interactive_timeout = 1800
wait_timeout = 1800

log_timestamps = system
my.cnf 参考内容

初始化

/data/mysql/bin/mysqld --defaults-file=/data/mysql/ini/my.cnf --initialize-insecure --explicit_defaults_for_timestamp --basedir=/data/mysql --datadir=/data/mysql3306/ --user=mysql
# --initialize-insecure 设置root 空密码

 启动服务

/data/mysql/bin/mysqld_safe  --defaults-file=/data/mysql/ini/my.cnf --user=mysql &
ps -ef|grep mysql 检查进程是否启动

登陆mysql

/data/mysql/bin/mysql -uroot -p --socket = /data/mysql3306/mysql.sock

安装完毕后的操作

设置root密码(如果使用root的话,应该删除root,创建一个新的特权用户)
mysqladmin -u root password  123 --socket=/data/mysql3306/mysql.sock

创建特权用户admin 删除root
grant all privileges on *.* to 'admin'@'%' identified by '123' with grant option;
flush privileges;

drop user 'root'@'localhost';

查看所有用户
SELECT DISTINCT CONCAT('User: ''',user,'''@''',host,''';') AS query FROM mysql.user;

关闭mysql的方法
/data/mysql/bin/mysqladmin -u root –p’123’  -S /data/mysql3306/mysql.sock shutdown
/data/mysql/bin/mysqladmin -u admin -p  -S /data/mysql3306/mysql.sock shutdown (如果root用户已经被删除的话)


重设密码
update mysql.user set authentication_string=password('YfD18$d079f!#DA') where user='root' and Host = 'localhost';
flush privileges;

alias mysql='mysql --socket=/data/mysql3306/mysql.sock  -uadmin -p123'
#!/bin/bash
/data/mysql/bin/mysqld_safe  --defaults-file=/data/mysql/ini/my.cnf --user=mysql &
start.sh
#!/bin/bash
/data/mysql/bin/mysqladmin -u admin -p  -S /data/mysql3306/mysql.sock shutdown
stop.sh

 

关于my.cnf里安装完毕后需要重新加一句

sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES

在线修改方式

#查看
SELECT @@sql_mode;
#修改
set GLOBAL sql_mode ='STRICT_TRANS_TABLES,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION ';

在线修改完毕后 开发的navicat需要重新连接一下

转载于:https://www.cnblogs.com/lazyball/p/8927237.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值