Linux 安装Mysql
2023-03-13 本文已影响0人
山水墨阳
步骤:
1、版本下载;2、上传解压;3、具体安装;4、数据库初始化。
版本下载
进入下载页面选择适合的版本(如:8.0.31):https://downloads.mysql.com/archives/community/
上传解压
- 将下载的数据库安装包上传到服务器指定地方,如:/app/tmp/
- 执行如下命令解压到当前文件夹
tar -xvf mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz
具体安装
- 解压后将文件移动到安装路径
mv mysql-8.0.31-linux-glibc2.12-x86_64/* /app/tool/mysql/ - 进入安装路径
cd /app/tool/mysql/ - 创建一个文件夹存放数据库文件,比如:/app/data/mysql/
mkdir /app/data/mysql - 创建一个文件夹存放日志,比如:/app/logs/mysql/
chmod +x /app/logs/mysql - 创建用户组(如果有需要,启动时使用的用户)
groupadd mysql && useradd -r -g mysql mysql
#授权目录文件
chown mysql:mysql -R /app/data/mysql
- 创建配置文件
vim /etc/my.cnf
chmod +x /etc/my.cnf
[mysqld]
bind-address=IP
port=3306
user=mysql
basedir=/app/tool/mysql
datadir=/app/data/mysql
socket=/tmp/mysql.sock
log-error=/app/data/mysql/mysql.err
pid-file=/app/data/mysql/mysql.pid
#character config
character_set_server=utf8mb4
symbolic-links=0
explicit_defaults_for_timestamp=true
#skip-grant-tables
- MYSQL初始化
cd /app/tool/mysql/bin
./mysqld --defaults-file=/etc/my.cnf --basedir=/app/tool/mysql --datadir=/app/data/mysql/ --user=mysql --initialize
查看初始密码:cat /app/data/mysql/mysql.err
初始化后会打印一个临时密码复制保存记录之,如:r5KpMb=y*76g
- 加入启动服务
cp -a /app/tool/mysql/support-files/mysql.server /etc/init.d/mysql
chmod +x /etc/init.d/mysql
#chkconfig --add mysql
service mysql start
#如果出现:mysql is neither service nor target!?
#执行:systemctl unmask mysql.service
service mysql start|restat|stop|status
查看状态:
service mysql status
数据库初始化
进入MYSQL控制台:
/app/tool/mysql/bin/mysql -u root -p
如果提示:缺失libtinfo.so.5,用如下命令处理一下(软连接)
# 注意libtinfo.so.6存放的路径
ln -s /lib64/libtinfo.so.6 /lib64/libtinfo.so.5
进入MYSQL控制台:
/app/tool/mysql/bin/mysql -u root -p
修改ROOT密码创建库用户等(以下SQL可能用到)
select host, user, authentication_string from user;
ALTER USER 'root'@'localhost' identified WITH mysql_native_password by '你的密码';
CREATE USER 'mroot'@'%' IDENTIFIED BY '你的密码' ;
ALTER USER 'mroot'@'%' identified WITH mysql_native_password by '你的密码' ;
GRANT ALL ON *.* TO 'mroot'@'%';
create database `urp-cts`;
CREATE USER 'mysql'@'%';
ALTER USER 'mysql'@'%' IDENTIFIED WITH mysql_native_password BY '你的密码';
GRANT SELECT,UPDATE,INSERT,DELETE,EXECUTE,CREATE,ALTER,INDEX ON `database`.* TO 'mysql'@'%';
FLUSH PRIVILEGES;#一定要刷新一下
备注:安装时可能存在权限问题,建议root账户安装,授权允许其他用户启动。
chown 用户:组 -R /app/data/mysql/