五、安装配置MySQL(下)
8、加入系统进程
将MySQL进程放入系统进程中,使用命令sudo cp support-files/mysql.server /etc/init.d/mysqld
重新启动MySQL服务,使用命令sudo service mysqld restart
9、登录mysql
使用随机密码登录MySQL数据库,命令 mysql -u root -p
结果报错“sudo: mysqld:找不到命令
”,使用命令sudo vi /etc/profile
编辑环境变量,加上代码
export PATH=$PATH:/usr/local/mysql/bin
让 profile 文件立即生效,使用命令
source /etc/profile
或
. /etc/profile
重新执行命令mysql -u root -p
后输入之前保存的随机密码
10、修改密码
10.1 为root用户设置新密码
进入MySQL命令行,为root用户设置新密码,使用命令alter user 'root'@'localhost' identified by ‘密码’;
(注意在句末加上 ; 以结束语句)
10.2 设置远程连接
使用命令use mysql;
转到该数据库下面,再使用命令update user set user.Host='%' where user.User='root';
刷新权限,使用命令flush privileges;
10.3 退出MySQL命令行
使用命令exit
10.4 验证口令是否修改成功
使用命令mysql -u root -p
并输入修改后的口令看下能否正常登陆MySQL
若出现如上图所示界面,则说明口令已修改成功了
11、配置启动文件
在MySQL的 support-files 目录下,复制 my.cnf 到 /etc/my.cnf (mysqld启动时自动读取),分两种处理方式,具体如下:
11.1 /mysql/support-files 文件夹中不存在 .cnf 文件
- 查看在该目录下是否含有 .cnf 文件,使用命令
sudo find ./support-files/ -name *.cnf
由上图可知,并不存在 .cnf 文件 - 再查看 /etc 文件夹中是否存在 my.cnf 文件,使用命令
sudo find /etc/ -name *.cnf
由上图可知,也不存在 my.cnf 文件 - 故直接在该目录下新建 my.cnf 文件,使用命令
sudo touch /etc/my.cnf
11.2 /mysql/support-files 文件夹中存在 .cnf 文件
- 转到 /mysql/support-files 文件夹中,使用命令
cd ./support-files/
- 将 .cnf 文件复制到 /etc/ 文件夹中,使用命令
cp .cnf /etc/my.cnf
11.3 编辑 /etc/my.cnf 文件
- 使用命令
sudo vi /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数据库的数据的存放目录
datadir=/usr/local/mysql/data
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
- 新建目录 /var/lib/mysql 并赋予权限,使用命令如下:
sudo mkdir /var/lib/mysql
sudo chmod 777 /var/lib/mysql
- 重新启动MySQL,使用命令
sudo systemctl restart mysqld
或
sudo service mysqld restart
出现报错:“Failed to restart mysql.server.service: Unit not found.”
原因:
MariaDB 代替了mysql数据库,MariaDB 数据库管理系统是MySQL的一个分支,主要由开源社区在维护,采用GPL授权许可。开发这个分支的原因之一是:甲骨文公司收购了MySQL后,有将MySQL闭源的潜在风险,因此社区采用分支的方式来避开这个风险。
解决方案:
安装 MariaDB ,使用命令sudo yum install mariadb-server -y
- 再次执行命令
sudo systemctl restart mysqld
或
sudo service mysqld restart
则不再报错,并可以使用命令sudo systemctl status mysqld
查看服务状态
11.4 设置开机启动
使用命令
sudo systemctl enable mysqld
sudo systemctl daemon-reload
11.5 添加远程登陆用户
默认只允许 root 帐户在本地登录,如果要在其它机器上连接MySQL,必须修改 root 允许远程连接,或者添加一个允许远程连接的帐户。
- 为了安全起见,添加一个新的帐户,具体命令如下:
mysql -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'cent'@'%' IDENTIFIED BY '密码' WITH GRANT OPTION;
exit
- 检验是否设置成功
使用新建的账户登录MySQL,命令mysql -u 新用户 -p
至此,已完成对MySQL的安装及配置