MySQL官网地址:https://www.mysql.com/downloads/
根据服务器位数选择合适安装包下载
linux查看位数命令:getconf LONG_BIT
下载完后使用ftp工具上传MySQL安装文件
安装步骤如下
解压
tar -xvf mysql-8.0.25-linux-glibc2.12-x86_64.tar.xz
创建数据目录
1.创建文件夹
mkdir -p /data/mysqldata/
#2 创建数据库用户 后边文件配置及初始化会用到, 如果你自己有其他用户也可以不创建新的
#2.1创建用户组
groupadd mysql
#2.2创建用户
useradd -r -g mysql mysql
#赋权限
2. chown mysql:mysql -R /data/mysqldata #chown 用户名:用户组 -R /data/mysqldata
3. chmod 750 /data/mysqldata/ -R
配置环境变量
vim /etc/profile
#如果你的系统不支持vim命令 使用下边这个
vi /etc/profile
#编辑,在文档最后一行 添加下边代码
export PATH=$PATH:你的MySQL解压路径/mysql-8.0.25/bin:你的MySQL解压路径/mysql-8.0.25/lib
编辑my.cnf
命令:vim /etc/my.cnf,进入后点击i,将下列命令复制进去
#mysql 安装路径,yum 安装无此项
basedir=/data/mysql-8.0.25
port=3306
max_connections=3000
#大小写不敏感
lower_case_table_names=1
default_authentication_plugin=mysql_native_password
bind-address = 0.0.0.0
skip-name-resolve
#log 错误日志存放路径
log_error=/data/mysql-8.0.25/mysqllog/mysqld.log
#慢日志存放路径
slow_query_log_file=/data/mysql-8.0.25/mysqllog/mysql_slows.log
#慢日志存储形式为文件
log_output=file
#开启慢日志
slow_query_log=1
#查询超过两秒的为慢查询,记录到日志中
long_query_time=2
max_allowed_packet=1024M
skip-name-resolve
#bin_log 日志存放时间为 180 天 binlog_expire_logs_seconds
expire_logs_days=180
#时区
default-time-zone='+08:00'
wait_timeout=288000
interactive_timeout=288000
#配置高速缓存大小
open_files_limit=65535
table_open_cache=4000
#表内存大小
tmp_table_size=256M
#索引大小
myisam_max_sort_file_size=100G
#存储引擎优化
innodb_flush_log_at_trx_commit=2
innodb_log_buffer_size=128M
#最大为内存的 50%,可以调节到 60%-80%
innodb_buffer_pool_size=16G
innodb_log_file_size=200M
#后期可以调整找到最佳线程数
innodb_thread_concurrency=64
innodb_autoextend_increment=64
innodb_buffer_pool_instances=8
innodb_concurrency_tickets=5000
innodb_buffer_pool_chunk_size=256M
innodb_old_blocks_time=1000
innodb_open_files=300
innodb_stats_on_metadata=0
innodb_file_per_table=1
innodb_checksum_algorithm=0
#JOIN 检索内存设置
join_buffer_size=8M
#最大错误连接数设置
max_connect_errors=50
#打开文件数设置
open_files_limit=4161
#分组检索优化
sort_buffer_size=16M
#读入缓冲区大小
read_buffer_size=8M
#控制总 frm 文件的数量设置
table_definition_cache=1400
#
local-infile=0
[client]
初始化MySQL
- cd /data/mysql-8.0.25/bin/
- ./mysqld --defaults-file=/etc/my.cnf --basedir=/data/mysql-8.0.25/ --datadir=/data/mysql-8.0.25/data --user=mysql --initialize
#参数详解
–defaults-file=/etc/my.cnf 指定配置文件(一定要放在最前面,至少 --initialize 前面)
–user=mysql 指定用户(很关键)
–basedir=/data/mysql-8.0.25/ 指定安装目录
–datadir=/data/mysql-8.0.25/data/ 指定初始化数据目录
#初始化数据库后, 会给一个临时密码, 请保存到本地, 第一次登录数据库会用到
如果初始化后没有显示默认密码用该命令搜索mysqld.log文件:find / -name mysqld.log,然后把这条命令中的路径替换成刚刚搜索出来的路径去执行:sudo grep ‘temporary password’ /var/log/mysqld.log,就会返回一条初始密码
启动MySQL
1.复制 mysql.server 文件
cp /data/mysql-8.0.25/support-files/mysql.server /etc/init.d/mysql
cp /data/mysql-8.0.25/support-files/mysql.server /etc/init.d/mysqld
2.赋予权限
chown 777 /etc/my.cnf
chmod +x /etc/init.d/mysql
chmod +x /etc/init.d/mysqld
3.启动数据库
service mysql start #或者 systemctl mysql start
启动成功
mysql数据库设置
1、修改初始密码:
mysql -u root -p
或者
#进入安装目录
cd /data/mysql-8.0.25/bin
执行命令
./mysql -uroot -p
2、修改密码:
ALTER USER ‘root’@‘localhost’ IDENTIFIED with mysql_native_password BY ‘dreamsoft’;
#刷新权限
flush privileges;
3、创建用户:
#创建用户任意远程访问
CREATE USER ‘zjstx’@‘%’ IDENTIFIED BY ‘dreamsoft’;
#修改密码
alter user ‘mysql’@‘%’ identified with mysql_native_password by ‘新密码’;
4、查看所用用户:
use mysql;
select user,host,plugin from user;
5、授权:
#给zjstx用户赋予全部权限
GRANT ALL ON . TO ‘zjstx’@‘%’;
刷新权限:flush privileges;