安装MySQL(无需root权限)

1.解压安装包

tar -zxvf mysql-5.7.13-linux-glibc2.5-x86_64.tar.gz

2.更改目录名称

mv mysql-5.7.13-linux-glibc2.5-x86_64 mysql

3.进入mysql并创建目录

mkdir log tmp var data conf

4.把创建的目录用户和用户组更改为hadoop

chown hadoop:hadoop log tmp var data
chown -R hadoop data log var tmp

5.更改my.cnf配置文件

vi /home/hadoop/mysql/conf/my.cnf
[mysqld]
log-bin                            = mysql-bin
server-id                          = 1
user                               = hadoop
port                               = 3306
key_buffer_size                    = 256M
max_allowed_packet                 = 256M
slave_max_allowed_packet           = 256M
table_open_cache                   = 512
sort_buffer_size                   = 2M
net_buffer_length                  = 8K
read_buffer_size                   = 2M
read_rnd_buffer_size               = 512K
myisam_sort_buffer_size            = 64M
thread_cache_size                  = 64
query_cache_size                   = 64M
max_connections                    = 32000
tmp_table_size                     = 128M
long_query_time                    = 3
slow_query_log
innodb_buffer_pool_size            = 7000M	#如果机器只有mysql,建议设置为物理内存的75%
innodb_flush_log_at_trx_commit     = 0
innodb_flush_method                = O_DIRECT
innodb_file_format                 = barracuda
innodb_log_file_size               = 1G
innodb_log_files_in_group          = 3
character_set_server               = utf8
log_timestamps                     = SYSTEM
#have_statement_timeout             = NO
############### PATH ##############
basedir                            = /home/hadoop/mysql
datadir                            = /home/hadoop/mysql/data
tmpdir                             = /home/hadoop/mysql/tmp
socket                             = /home/hadoop/mysql/var/mysql.sock
pid_file                           = /home/hadoop/mysql/var/mysql.pid
general_log_file                   = /home/hadoop/mysql/log/general.log
innodb_data_home_dir               = /home/hadoop/mysql/data
slow_query_log_file                = /home/hadoop/mysql/log/slow.log
log_error                          = /home/hadoop/mysql/log/error.log
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql]
default-character-set = utf8
[client]
default-character-set = utf8

6.执行初始化操作

bin/mysqld --initialize --basedir=/home/hadoop/mysql/ --datadir=/home/hadoop/mysql/data --user=hadoop  --socket=/home/hadoop/mysql/var --port=3306

如果初始化没有打印出日志 查看是否有/etc/my.cnf 默认读取了该配置

初始化后会在控制台打印出初始密码,一般就是最后几个字符,先记录下来。

--basedir 指定mysql安装目录

--datadi  指定data目录

--user   指定用户

--socket  指定socket文件存放位置

--port   指定启动端口

7.启动MySQL服务

nohup bin/mysqld_safe --defaults-file=/home/hadoop/mysql/conf/my.cnf --socket=/home/hadoop/mysql/var/mysql.sock &

8.登陆

  bin/mysql -u root -S /home/hadoop/mysql/var/mysql.sock -p

输入刚才记录的初始密码

9.修改密码

  set password=password('123456');

10.如需使用 mysql -u -p 方式登陆  需要执行以下操作

ln -s /home/hadoop/mysql/var/mysql.sock /tmp/mysql.sock

11.设置环境变量

export MYSQL_HOME=/home/hadoop/mysql
export PATH=$MYSQL_HOME/bin:$PATH

12.配置远程登陆权限

  grant all privileges on *.* to root@'%' identified by '123456';
  flush privileges;

查看是否成功

use mysql;
select host,user from user;

如果有root权限 可以设置开机启动

cp support-files/mysql.server /etc/init.d/mysql

添加到系统服务

cp mysql.server /etc/init.d/mysqld
cd /etc/init.d/
chkconfig --add mysqld #将mysql加到启动服务列表里

#把配置文件路径添加到启动命令中
vi /etc/init.d/mysqld
defaults-file=/home/hadoop/mysql/conf/my.cnf

创建用户

create user 'meta'@'%' identified by 'meta2015';

授予权限

grant all on *.* to meta@'%';

安装MySQL(无需root权限)
https://www.hechunyu.com/archives/an-zhuang-mysql-wu-xu-rootquan-xian
作者
chunyu
发布于
2021年07月30日
许可协议