一、安装必要的依赖组件
yum install –y autoconf automake imake libxml2-devel expat-devel cmake gcc gcc-c++ libaio libaio-devel bzr bison libtool ncurses5-devel
二、下载 YUM Repository
wget https://repo.mysql.com//mysql80-community-release-el7-3.noarch.rpm
三、加入到系统
centos7 默认是没有 MySQL 相关的 repository,因此须要咱们手动将刚刚下载好的 repository 加入到系统中去。
yum localinstall mysql80-community-release-el7-3.noarch.rpm
四、确认是否成功
yum repolist all | grep mysql
以上,能够看到全部 MySQL 版本的启用状态,目前是 mysql80-community 处于 enabled 状态。假设要安装 MySQL5.7 版本,须要启用 mysql57-community,而且禁用 mysql80-community。
yum-config-manager --enable mysql57-community
yum-config-manager --disable mysql80-community
若是系统提示:
-bash: yum-config-manager: command not found
那就须要手动编辑:
vim /etc/yum.repos.d/mysql-community.repo
里面的内容简单易懂,根据本身的需求,改变 enabled 的值,其余内容不用改动。修改完成后,以防改错,能够运行以下命令来查看究竟启用了哪一个版本的 MySQL:
yum repolist enabled | grep mysql
五、安装 MySQL 服务
yum install mysql-community-server
中间会有两次确认,都输入“y”便可。一切顺利,启动 MySQL 服务。
systemctl start mysqld.service
查看状态
systemctl status mysqld.service
如果报错的话执行以下命令
rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
停止服务
systemctl stop mysqld.service
重启 MySQL
systemctl restart mysqld.service
再重新启动就好了。
以上mysql就安装成功了。
MySQL 的安装目录
运行脚本:/usr/bin
mysqld 服务脚本: /usr/sbin
MySQL 数据目录:/var/lib/mysql
MySQL 日志文件:/var/log/mysqld.log
六、设置开机自启动
systemctl enable mysqld
刷新所有修改过的配置文件
systemctl daemon-reload
七、初始化 root 帐户
至此,MySQL 服务安装成功了,可是还不知道 root 密码,须要重置。
可是,初次安装 MySQL,会自动生成一个临时密码,这个密码被写入在了日志文件中,运行命令查看:
cat /var/log/mysqld.log | grep 'temporary password'
知道初始密码后,必须立刻修改。凭此临时密码,先登陆:
mysql -u root -p
登陆进去后,除了修改密码,其余的操做是不被容许的,因此先把新密码设置好:
SET PASSWORD FOR 'root'@'localhost' = PASSWORD('new_password');
至此,root 密码被修改了,可是 root 帐户还不能远程登陆。 解决的办法有两个,其一是将 root 帐户的 host 改成“%”,能够直接用如下的 UPDATE 语句:
UPDATE mysql.user SET host = '%' WHERE user='root';
其二,是新建一个帐户,并给帐户受权:
CREATE USER 'admin'@'%' IDENTIFIED BY 'new_password';
GRANT ALL ON *.* TO 'admin'@'%';
注意 :以上都须要最后运行一条命令才能生效:
FLUSH PRIVILEGES;
实际上,应该严禁直接使用 root 帐户,仅限运维人员本地登陆才是对的。因此,在实际工做中,能够更为精细化的管理 MySQL 的权限,防止“悲剧”发生。
八、设置默认编码
设置默认编码为 utf-8(mysql 安装后默认不支持中文)
vim /etc/my.cnf 进入文件后添加下面的配置即可[mysqld]
character-set-server=utf8
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
重启 MySQL 服务并进入 MySQL
systemctl restart mysqld
mysql -uroot -p
show variables like 'character%';
- 出现如下则说明编码修改完成
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
九、退出mysql
exit 或者 quit 退出 mysql
mysql> quit