一、mysql基础安装[数据库教程]

database

一、搭建mysql数据库

mkdir /data
tar -xvf mysql-8.0.19-linux-glibc2.12-x86_64.tar.xz
mv mysql-8.0.19-linux-glibc2.12-x86_64 /data/mysql

添加环境变量

echo ‘export PATH=/data/mysql/bin:$PATH
‘>>/etc/profile
source /etc/profile

创建用户

useradd mysql??
mkdir /data/mysql/data #创建数据目录
chown -R mysql.mysql /data #将/data目录权限授权给mysql用户

二、初始化数据库

1、初始化数据,初始化管理员的临时密码

mysqld --initialize ?--user=mysql --basedir=/data/mysql --datadir=/data/mysql/data

5.7开始,MySQL加入了全新的 密码的安全机制:
1.初始化完成后,会生成临时密码(显示到屏幕上,并且会往日志中记一份)
2.密码复杂度:长度:超过12位? 复杂度:字符混乱组合
3.在5.7.11版本后把密码过期默认值从360变成了0也就是永不过期了

2、初始化数据,初始化管理员的密码为空

mysqld --initialize-insecure ?--user=mysql --basedir=/data/mysql --datadir=/data/mysql/data

三、配置启动文件并启动数据库

cat > /etc/my.cnf <<EOF
[mysqld]
user=mysql
basedir=/data/mysql
datadir=/data/mysql/data
server_id=6
port=3306
socket=/tmp/mysql.sock
[mysql]
socket=/tmp/mysql.sock
prompt=3306 [d]>
EOF

1、直接启动

/data/mysql/bin/mysqld --defaults-file=/etc/my.cnf &

2、通过mysql自带的启动脚本启动

cp /data/mysql/support-files/mysql.server /etc/init.d/mysqld
chmod +x /etc/init.d/mysqld
service mysqld start

设置开机启动
chkconfig --level 35 mysqld on
chmod +x /etc/rc.d/init.d/mysqld
chkconfig --add mysqld
chkconfig --list

3、使用systemd管理mysql

cat > /etc/systemd/system/mysqld.service <<EOF
[Unit]
Description=MySQL Server
Documentation=man:mysqld(8)
Documentation=http://dev.mysql.com/doc/refman/en/using-systemd.html
After=network.target
After=syslog.target
[Install]
WantedBy=multi-user.target
[Service]
User=mysql
Group=mysql
ExecStart=/data/mysql/bin/mysqld --defaults-file=/etc/my.cnf
LimitNOFILE = 5000
EOF
systemctl daemon-reload
systemctl start mysqld
systemctl status mysqld

systemctl enable mysqld.service #添加开机自启

四、启动数据库

1、如果使用的是管理员临时密码初始化的

mysql -uroot -p‘pEckoe?q#4Kd‘
alter user [email protected] identified by ‘123‘;
flush privileges;

2、如果使用的是管理员空密码初始化

[[email protected] ~]# mysqladmin -uroot -p password 123
Enter password:? ##直接回车就好,密码为空

五、管理员用户密码忘记处理

先停掉数据库

systemctl stop mysqld

--skip-grant-tables ##跳过授权表
--skip-networking ##跳过远程登陆,防止远程用户恶意登陆
mysqld_safe --skip-grant-tables --skip-networking & #此时任意密码都可以登录数据库

mysql ##直接输入mysql就可以登陆

alter user [email protected] identified by ‘1234‘;
flush privileges;
alter user [email protected] identified by ‘1234‘; #必须再来一次不然不生效

1、如果使用service管理mysql

service mysqld restart #直接重启就好

2、如果使用systemctl,直接重启停不掉mysqld_safe

mysqladmin -uroot -p1234 shutdown

systemctl start mysqld

?

?

?

一、mysql基础安装

原文:https://blog.51cto.com/u_13236892/3314508

以上是 一、mysql基础安装[数据库教程] 的全部内容, 来源链接: utcz.com/z/535822.html

回到顶部