linux 安装MySQL数据库

1.下载MySQL

wget -O mysql.tar.gz https://cdn.mysql.com/archives/mysql-5.7/mysql-5.7.18-linux-glibc2.5-x86_64.tar.gz

2.创建MySQL用户(若已创建,则忽略)

groupadd mysql

useradd -g mysql mysql

3.更改用户组和用户权限

chown -R mysql:mysql mysql

chgrp -R mysql mysql

4.解压下载后的文件

tar xzvf mysql.tar.gz -C mysql

5.编辑初始化shell,初始化数据库.

    由于该版本未在解压后的文件中找到 'my.cnf' 配置文件,
    故采用 'shell' 命令参数初始化数据库和启动数据库

5.1 编辑如下脚本

vi 10-initialize.sh
MYSQL_HOME=/home/mysql
MYSQL_EXE=${MYSQL_HOME}/01-mysql-server/bin/mysqld
MYSQL_BASE=${MYSQL_HOME}/01-mysql-server
MYSQL_DATA=${MYSQL_HOME}/02-mysql-data
MYSQL_SLOW=${MYSQL_HOME}/03-mysql-log/02-mysql-data.slow.log
MYSQL_ERROR=${MYSQL_HOME}/03-mysql-log/02-mysql-data.err.log
MYSQL_SOCKET=${MYSQL_HOME}/03-mysql-log/02-mysql-data.sock

${MYSQL_EXE} \
    --initialize \
    --user=mysql \
    --basedir=${MYSQL_BASE} \
    --datadir=${MYSQL_DATA} \
    --bind-address=0.0.0.0 \
    --innodb_read_io_threads=6 \
    --slow_query_log=1 \
    --slow_query_log_file=${MYSQL_SLOW} \
    --long_query_time=1 \
    --character-set-server=utf8 \
    --collation-server=utf8_general_ci \
    --socket=${MYSQL_SOCKET} \
    --log-error=${MYSQL_ERROR} \
    --innodb_flush_method=O_DIRECT 

vi 11-start-mysql.sh
MYSQL_HOME=/home/mysql
MYSQL_EXE=${MYSQL_HOME}/01-mysql-server/bin/mysqld
MYSQL_BASE=${MYSQL_HOME}/01-mysql-server
MYSQL_DATA=${MYSQL_HOME}/02-mysql-data
MYSQL_SLOW=${MYSQL_HOME}/03-mysql-log/02-mysql-data.slow.log
MYSQL_ERROR=${MYSQL_HOME}/03-mysql-log/02-mysql-data.err.log
MYSQL_SOCKET=${MYSQL_HOME}/03-mysql-log/02-mysql-data.sock

${MYSQL_EXE} \
    --basedir=${MYSQL_BASE} \
    --datadir=${MYSQL_DATA} \
    --bind-address=0.0.0.0 \
    --daemonize=ON \
    --innodb_read_io_threads=6 \
    --slow_query_log=1 \
    --slow_query_log_file=${MYSQL_SLOW} \
    --long_query_time=1 \
    --character-set-server=utf8 \
    --collation-server=utf8_general_ci \
    --socket=${MYSQL_SOCKET} \
    --log-error=${MYSQL_ERROR} \
    --innodb_flush_method=O_DIRECT 

vi 12-root-login.sh
MYSQL_HOME=/home/mysql
${MYSQL_HOME}/01-mysql-server/bin/mysql \
    --socket=${MYSQL_HOME}/03-mysql-log/02-mysql-data.sock \
    -u root \
    -p

chmod +x *.sh   '赋予脚本可执行权限'

并新建如下两个目录
mkdir 02-mysql-data 03-mysql-log

5.2 初始化数据库

./10-initialize.sh  '或者'  sh 10-initialize.sh

然后查看临时生成的密码 

cat 03-mysql-log/02-mysql-data.err.log

A temporary password is generated for root@localhost: 'ZVuf3vhK06(j'

密码为红色部分的 ZVuf3vhK06(j

5.3 启动数据库主进程

./11-start-mysql.sh  '或者'  sh 11-start-mysql.sh

执行完毕后就可以登陆MySQL控制台了

6 登陆MySQL控制台,并修改root密码

./12-root-login.sh  '或者'  sh 12-root-login.sh

输入生成的临时密码,回车

7 修改root用户的初始密码

注意末尾的分号 ';'
set password for user@localhost = password('密码');

例子:
set password for root@localhost = password('password');

8 可能存在问题 -->(解决方法)

在局域网中,可能存在可视化工具不能连接数据库(错误代码为1130)的情况.

个人比较喜欢  '授权法'

grant all privileges on *.* to 'root'@'%' identified by 'password' with grant option;

flush privileges; 
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容