Linux系统安装数据库通用方法
MySQL版本:mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz(无要求)
下载地址:
https://dev.mysql.com/downloads/mysql/
卸载系统自带的MARIADB(如果有)
rpm -qa|grep mariadb
将以上安装包卸载
yum -y remove mariadb-server-5.5.68-1.el7.x86_64
yum -y remove mariadb-5.5.68-1.el7.x86_64
yum -y remove mariadb-libs-5.5.68-1.el7.x86_64
安装步骤:
下载的是 mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz 安装包,并将其直接放在了 /usr/local/mysql 目录下
将上⾯准备好的 MySQL 安装包解压到 /usr/local/mysql/ ⽬录,
tar -zxvf /usr/local/mysql/mysql-5.7.30-linux-glibc2.12-x86_64.tar.gz
进入 /usr/local/msql 目录并将其重命名为 /usr/local/mysql/mysql-5.7.30
cd /usr/local/mysql
mv mysql-5.7.30-linux-glibc2.12-x86_64 mysql-5.7.30
创建mysql⽤户和⽤户组
groupadd mysql
useradd -g mysql mysql
修改mysql目录的归属用户
chown -R mysql:mysql /usr/local/mysql/
准备mysql的配置文件
在/etc 目录下新建 my.cnf ⽂件
vim /etc/my.cnf
在文件上写⼊如下简化配置:
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock
[mysqld]
skip-name-resolve
#设置3306端⼝
port = 3306
socket=/var/lib/mysql/mysql.sock
# 设置mysql的安装⽬录
basedir=/usr/local/mysql/mysql-5.7.30
# 设置mysql数据库的数据的存放⽬录
datadir=/usr/local/mysql/mysql-5.7.30/data
# 允许最⼤连接数
max_connections=200
# 服务端使⽤的字符集默认为8⽐特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使⽤的默认存储引擎
default-storage-engine=INNODB
lower_case_table_names=0
max_allowed_packet=16M
使用如下命令创建 /var/lib/mysql ⽬录,并修改权限:
mkdir /var/lib/mysql
chmod 777 /var/lib/mysql
安装MySQL
创建/usr/local/mysql/mysql-5.7.30/data 目录
mkdir /usr/local/mysql/mysql-5.7.30/data
chown -R mysql:mysql /usr/local/mysql/mysql-5.7.30/data
执行如下命令:
cd /usr/local/mysql/mysql-5.7.30
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql/mysql-5.7.30 --datadir=/usr/local/mysql/mysql-5.7.30/data
注:记住上⾯打印出来的 root 的密码,后面首次登陆需要使用
2022-04-04T12:12:01.924197Z 1 [Note] A temporary password is generated for root@localhost: 随机密码
复制启动脚本到资源⽬录
cp /usr/local/mysql/mysql-5.7.30/support-files/mysql.server /etc/init.d/mysqld
修改 /etc/init.d/mysqld ,修改其 basedir 和 datadir 为实际对应目录:
basedir=/usr/local/mysql/mysql-5.7.30
datadir=/usr/local/mysql/mysql-5.7.30/data
设置MySQL系统服务并开启自启
先增加 mysqld 服务控制脚本执行权限:
chmod +x /etc/init.d/mysqld
将 mysqld 服务加⼊到系统服务:
chkconfig --add mysqld
最后检查 mysqld 服务是否已经生效即可:
chkconfig --list mysqld
2.on 3.on 4.on 5.on
这样就表明 mysqld 服务已经生效了,在2、3、4、5运行级别随系统启动而自动启动,以后可以直接使用service 命令控制 mysql 的启停。
启动mysqld
service mysqld start
将 MySQL 的 BIN 目录加入 PATH 环境变量
编辑/etc/profile文件,在⽂件末尾处追加如下信息:
vim /etc/profile
export PATH=$PATH:/usr/local/mysql/mysql-5.7.30/bin
后执行如下命令使环境变量生效
source ~/.bash_profile
source /etc/profile
首次登陆MySQL
以 root 账户登录 mysql ,使用上文安装完成提示的密码进行登录
mysql -uroot -p
修改ROOT账户密码
在mysql的命令行执行如下命令即可,密码可以换成你想用的密码即可:
alter user user() identified by "123456";
flush privileges;
设置远程主机登录
use mysql;
update user set user.Host='%' where user.User='-root';
update user set user.Host='%' where user.User='root';
flush privileges;
利用navicat/SQLyog等⼯具进行测试
安装目录
/usr/local/mysql/mysql-5.7.30
测试方法
MySql设置远程访问权限
本地mysql客户端连接mysql
mysql -uroot -p
执行sql语句:
使用mysql系统数据库
use mysql;
配置192.168.1.10可以通过root:123456访问数据库
GRANT ALL PRIVILEGES ON *.* to 'root'@'192.168.1.10' identified by '123456';
配置所有ip可以通过root:123456访问数据库
grant all privileges on *.* to root@'%' identified by "123456";
从mysql数据库中的授权表重新载入权限
flush privileges;
查看用户权限是否变更
select * from user;
远程访问权限已经配置完成。