Linux环境下MySQL8.0安装
一、准备工作
- 下载安装包 下载地址
- 查看系统?带的
MARIADB
rpm -qa|grep mariadb
- 卸载系统?带的
MARIADB
(如果有),remove后面加rpm -qa|grep mariadb
查询出来的路径
yum -y remove
- 将
mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz
安装包上传到/usr/local/
目录下 - 安装包解压,并重命名为mysql
xz -d mysql-8.0.26-linux-glibc2.12-x86_64.tar.xz tar -xvf mysql-8.0.26-linux-glibc2.12-x86_64.tar mv mysql-8.0.26-linux-glibc2.12-x86_64 mysql
- 创建MYSQL?户和?户组
groupadd mysql useradd -g mysql mysql
- 修改MYSQL?录的归属?户
chown -R mysql:mysql ./
- 准备MYSQL的配置?件,编辑
vim /etc/my.conf
[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数据库的数据的存放?录 datadir=/usr/local/mysql/data # 允许最?连接数 max_connections=200 # 服务端使?的字符集默认为8?特编码的latin1字符集 character-set-server=utf8 # 创建新表时将使?的默认存储引擎 default-storage-engine=INNODB lower_case_table_names=1 max_allowed_packet=16M
并且修改权限
mkdir /var/lib/mysql chmod 777 /var/lib/mysql
- 进入
cd /usr/local/mysql
目录 进行初始化
./bin/mysqld --initialize --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data
- 【Linux环境下MySQL8.0安装】执行初始化后,控制台会返回临时密码,
记录临时密码
,后面会用到例如:
像我的例子在最后一行 temporary password is generated for root@localhost:kvct:yIy8_qk
我的临时密码就是这个:kvct:yIy8_qk
例子: 2021-09-14T01:30:19.227943Z 0 [System] [MY-013169] [Server] /usr/local/mysql/bin/mysqld (mysqld 8.0.26) initializing of server in progress as process 1808 2021-09-14T01:30:19.250431Z 1 [System] [MY-013576] [InnoDB] InnoDB initialization has started. 2021-09-14T01:30:20.184005Z 1 [System] [MY-013577] [InnoDB] InnoDB initialization has ended. 2021-09-14T01:30:21.140583Z 0 [Warning] [MY-013746] [Server] A deprecated TLS version TLSv1 is enabled for channel mysql_main 2021-09-14T01:30:21.141148Z 0 [Warning] [MY-013746] [Server] A deprecated TLS version TLSv1.1 is enabled for channel mysql_main 2021-09-14T01:30:21.341903Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: kvct:yIy8_qk
- 复制启动脚本到资源目录
cp ./support-files/mysql.server /etc/init.d/mysqld
- 编辑
vim /etc/init.d/mysqld
,修改basedir
和datadir
,为其实际对应的目录
basedir=/usr/local/mysql datadir=/usr/local/mysql/data
- 增加 mysqld 服务控制脚本执?权限
chmod +x /etc/init.d/mysqld
- 将 mysqld 服务加?到系统服务
chkconfig --add mysqld
- 检查 mysqld 服务是否已经?效即可
mysqld 0:关 1:关 2:开 3:开 4:开 5:开 6:关
chkconfig --list mysqld
- 启动mysql, 返回
SUCCESS!
service mysqld start
- 编辑
vim ~/.bash_profile
,在文件末尾添加下面信息
export PATH=$PATH:/usr/local/mysql/bin
- 执行下面命令,使环境变量生效
source ~/.bash_profile
- 以 root 账户登录 mysql
mysql -u root -p
- 输入刚才记录的
临时密码
- 修改
Root
账户密码,并刷新权限
alter user user() identified by "root"; flush privileges;
- 设置远程主机登录
use mysql; update user set user.Host='%' where user.User='root'; flush privileges;
- 做完上面步骤,肯能还是远程连接不上,开放端口或者关闭防火墙
- 查看防火墙状态
systemctl status firewalld
- 查看开机是否启动防火墙服务
systemctl is-enabled firewalld
- 关闭防火墙
systemctl stop firewalld
- 禁用防火墙(系统启动时不启动防火墙服务)
systemctl disable firewalld systemctl is-enabled firewalld
推荐阅读
- 开学第一天(下)
- 【故障公告】周五下午的一次突发故障
- 人生感悟记#环境仪器宋庆国成长记#072
- 生活随笔|好天气下的意外之喜
- MongoDB,Wondows下免安装版|MongoDB,Wondows下免安装版 (简化版操作)
- 汇讲-勇于突破
- Android中的AES加密-下
- 说的真好
- 六步搭建ES6语法环境
- 放下心中的偶像包袱吧