Mysql组件的安装
- 序言
- 1.前提准备
- 2.解压安装包
- 3.移动解压包
- 4.用户操作
- 5.安装组件
- 6.配置数据库开机启动
- 7.修改mysql账号密码
- 8.将mysql放入默认路径
- 9.设置mysql的远程权限访问
序言
通病:之前在安装mysql的时候,我们会遇到很多很多奇怪的问题,例如
1.mysql安装时候显示文件冲突
2.按照别人的步骤但是发现了mysql安装的时候很多文件不存在或者安装的时候显示命令不能执行
3.安装好第一次可以运行,很开心,然后过了不久之后再使用service mysql start 发现报了一大堆错误😭
本博客是经过我昨天实践安装之后确认没有问题之后撰写的。希望可以帮助大家解决一些安装过程中的小细节引起的问题。
1.前提准备
- 如果之前已经下载了mysql或者安装过mysql需要处理一下之前的残留文件1
下载mysql的安装包
官方下载地址 直接选择需要安装的版本然后点击下方的下载即可
本人这里选择的是mysql 5.6.17版本
2.解压安装包
在linux机器上,可以使用组件xftp或者使用自带命令rz将下载好的安装包移动到linux下2
tar -zxvf [name].tar.gz
3.移动解压包
我们一般讲mysql的安装包解压后软件放置在 /usr/local/下
cp [name] /usr/local/mysql -r
4.用户操作
1.添加用户组
groupadd mysql
2.添加用户
useradd -r -g mysql mysql3
5.安装组件
1.以下命令可以直接一起放在一个脚本中执行:
--进入安装mysql软件目录
cd /usr/local/mysql
--修改当前目录拥有者为mysql用户
chown -R mysql:mysql ./
--安装数据库
./scripts/mysql_install_db --user=mysql
--修改当前目录拥有者为root用户
chown -R root:root ./
--修改当前data目录拥有者为mysql用户
chown -R mysql:mysql data
2.修改配置文件
- 打开/ect/my.cnf文件
- 删除内容,输入以下配置
#客户端编码集
[mysql]
default-character-set=utf8
[mysqld]
#设置端口号
port = 3306
#设置服务端的编码集
character-set-server=utf8
lower_case_table_names=1
#设置mysql的目录地址
basedir=/usr/local/mysql
#设置mysql数据存放的目录地址
datadir=/usr/local/mysql/data
#设置最大连接数
max_connections=200
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
max_allowed_packet=16M
6.配置数据库开机启动
--添加开机启动,把启动脚本放到开机初始化目录下
--此文件在mysql目录下,移动即可
cp support-files/mysql.server /etc/init.d/mysql
--测试启动mysql服务
service mysql start
--查看mysql端口是否正常占用
ps -ef|grep mysql
7.修改mysql账号密码
- 1.初始时可以使用mysql -uroot -p登陆,密码默认是空的
- 2.修改密码:
./bin/mysqladmin -u root password '密码'
8.将mysql放入默认路径
--使用链接拷贝过去,防止后续需要更改操作
ln -s /usr/local/mysql/bin/mysql /usr/local/bin/mysql
9.设置mysql的远程权限访问
1.设置访问单个数据库权限
mysql>grant all privileges on test.* to 'root'@'%';
2.设置访问全部数据库权限
mysql>grant all privileges on *.* to 'root'@'%';
3.按照用户名来设置访问权限
mysql>grant all privileges on *.* to 'tempuser'@'%';
4.设置密码访问权限
mysql>grant all privileges on *.* to 'root'@'%' IDENTIFIED BY '8888';
5.设定主机访问权限
mysql>grant all privileges on *.* to 'tempuser'@'192.168.213.1';
6.设置用户指定机器访问权限
user:myuser pwd:mypassword 从任何主机连接到mysql服务器
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
user:myuser pwd:mypassword 从192.168.213.1连接到mysql服务器
GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
7.必须执行的一步
flush privileges;
- Linux下mysql的卸载:
1、查找以前是否装有mysql
命令:rpm -qa|grep -i mysql
可以看到mysql的两个包:
mysql-4.1.12-3.RHEL4.1
mysqlclient10-3.23.58-4.RHEL4.1
2、删除mysql
删除命令:rpm -e --nodeps 包名
( rpm -ev mysql-4.1.12-3.RHEL4.1 )
3、删除老版本mysql的开发头文件和库
检查各个mysql文件夹是否删除干净
find / -name mysql
结果如下:
/var/lib/mysql
/usr/local/mysql
/usr/lib/mysql
/usr/include/mysql
命令:
rm -fr /usr/lib/mysql
rm -fr /usr/include/mysql
注意:卸载后/var/lib/mysql中的数据及/etc/my.cnf不会删除,如果确定没用后就手工删除
rm -f /etc/my.cnf
rm -fr /var/lib/mysql
4.删除mysql用户及用户组
userdel mysql
groupdel mysql ↩︎ - yum install lrzsz ↩︎
- -c:加上备注文字,备注文字保存在passwd的备注栏中。
-d:指定用户登入时的主目录,替换系统默认值/home/<用户名>
-D:变更预设值。
-f:指定在密码过期后多少天即关闭该账号。如果为0账号立即被停用;如果为-1则账号一直可用。默认值为-1.
-g:指定用户所属的群组。值可以使组名也可以是GID。用户组必须已经存在的,期默认值为100,即users。
-G:指定用户所属的附加群组。
-m:自动建立用户的登入目录。
-M:不要自动建立用户的登入目录。
-n:取消建立以用户名称为名的群组。
-r:建立系统账号。
-s:指定用户登入后所使用的shell。默认值为/bin/bash。
-u:指定用户ID号。该值在系统中必须是唯一的。0~499默认是保留给系统用户账号使用的,所以该值必须大于499。 ↩︎