mysql下载地址(这里使用的是5.7.28)
官网地址: https://dev.mysql.com/downloads/mysql/
百度云地址: https://pan.baidu.com/s/1kGXBgt1KP8UzD68iJ-jgFg
提取码:href
mysql…tar.gz传进虚拟机后,合适位置解压
tar -zxvf mysql-5.7.28-linux-glibc2.12-x86_64.tar.gz
改名
mv mysql-5.7.28-linux-glibc2.12-x86_64 mysql-5.7.28
创建用户组,用户
groupadd mysql
useradd -r -g mysql mysql
创建mysql数据仓库目录
mkdir mysql_data(自定义位置,配置文件会使用)
编辑my.cnf文件
5.7版本后,mysql取消了此文件,这里手动添加了一个(具体需要别的内容可以自行百度)
touch /etc/my.cnf
#编辑my.cnf文件
# http://dev.mysql.com/doc/refman/5.7/en/server-configuration-defaults.html
# *** DO NOT EDIT THIS FILE. It's a template which will be copied to the
# *** default location during install, and will be replaced if you
# *** upgrade to a newer version of MySQL.
[mysqld]
# Remove leading # and set to the amount of RAM for the most important data
# cache in MySQL. Start at 70% of total RAM for dedicated server, else 10%.
innodb_buffer_pool_size = 10G
# Remove leading # to turn on a very important data integrity option: logging
# changes to the binary log between backups.
log_bin
character-set-server=utf8
collation-server=utf8_bin
init-connect='SET NAMES utf8'
# These are commonly set, remove the # and set as required.
basedir = /home/usr/java/mysql-5.7.28
datadir = /home/usr/java/mysql_data
port = 3306
server_id = 22206
socket = /home/usr/java/mysql_data/mysql.sock
binlog_format = statement
# Remove leading # to set options mainly useful for reporting servers.
# The server defaults are faster for transactions and fast SELECTs.
# Adjust sizes as needed, experiment to find the optimal values.
join_buffer_size = 128M
sort_buffer_size = 2M
read_rnd_buffer_size = 2M
log_bin_trust_function_creators = on
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
lower_case_table_names=1
手动加入
vi /etc/my.cnf
复制上面贴出来的内容
参数
basedir = /home/usr/java/mysql-5.7.28 (mysql安装路径)
datadir = /home/usr/java/mysql_data(mysql数据仓库)
socket = /home/usr/java/mysql_data/mysql.sock(数据仓库路径下)
设置目录访问权限
mysql安装目录执行(注意有个点)
chown -R mysql .
chgrp -R mysql .
chown -R mysql /home/usr/java/mysql_data(数据仓库路径)
配置参数
mysql安装目录执行(basedir、datadir对应修改)
bin/mysqld --initialize --user=mysql --basedir=/home/usr/java/mysql-5.7.28 --datadir=/home/usr/java/mysql_data/
报错信息及处理,/etc/my.cnf 第一行错了,注掉即可
重新执行bin/mysqld --initialize --user=mysql --basedir=/home/usr/java/mysql-5.7.28 --datadir=/home/usr/java/mysql_data/
如果报这个错
[root@sunway-gpmaster3 mysql-5.7.28]# mysql -hlocalhost -uroot -p
Enter password:
ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/tmp/mysql.sock' (111)
则在my.cnf文件下加
[client]
default-character-set=utf8
socket=/storage/db/mysql/mysql.sock
[mysql]
default-character-set=utf8
socket=/storage/db/mysql/mysql.sock
标出来的是密码,记录下来
bin/mysql_ssl_rsa_setup --datadir=/home/usr/java/mysql_data/
cp support-files/mysql.server /etc/init.d/mysql
vi /etc/init.d/mysql
修改 basedir=/home/usr/java/mysql-5.7.28(安装路径)
修改 datadir=/home/usr/java/mysql_data(数据仓库)
/etc/init.d/mysql start(启动)
mysql -hlocalhost -uroot -p(如果如图报错)
如果如图报错
ERROR 2002 (HY000): Can’t connect to local MySQL server through socket ‘/tmp/mysql.sock’ (2)
mv 指令移动生成的.sock 和 .sock.lock 文件到/tmp (默认目录)
生成的.sock 和 .sock.lock 在数据仓库目录里面
mv /home/usr/java/mysql_data/mysql.sock /tmp
mv /home/usr/java/mysql_data/mysql.sock.lock /tmp
mysql -hlocalhost -uroot -p(重新登陆)
在这里插入图片描述
修改密码(password(‘root’)) root 即为密码
mysql> set password=password(‘root’);
设置root账户的host地址(修改了才可以远程连接)
mysql>grant all privileges on *.* to 'root'@'%' identified by 'root';
mysql>flush privileges;
-
查看表
mysql> use mysql;
mysql> select host,user from user;这里就可以使用远程连接测试了,如果连接不上,关闭防火墙;
Centos6.9
(service iptables stop)
永久关闭 chkconfig iptables offCentos7
设置开机启用防火墙:systemctl enable firewalld.service
设置开机禁用防火墙:systemctl disable firewalld.service
启动防火墙:systemctl start firewalld
关闭防火墙:systemctl stop firewalld
检查防火墙状态:systemctl status firewalld配置mysql自动启动
chmod 755 /etc/init.d/mysql
chkconfig --add mysql
chkconfig --level 345 mysql on