怎么在红帽系统添加mysql

藏色散人
Freigeben: 2020-11-13 10:05:10
Original
2460 Leute haben es durchsucht

在红帽系统添加mysql的方法:首先以root用户登录红帽系统;然后创建mysql用户和mysql组;接着设定数据存储目录;最后进入mysql目录,手动执行数据库初始化脚本并进行相关配置文件修改即可。

怎么在红帽系统添加mysql

推荐:《mysql视频教程
在Redhat红帽系统中编译安装MySQL
0、以root用户登录系统,进行如下操作

可以避免一些麻烦,如:安装完成之后无法设定密码,看不到mysql库。

1、将通用二进制压缩包解压缩至 /usr/local 官方的要求,并且目录名称必须是mysql
  • 进入压缩包目录,执行如下命令,解压缩
    tar xf mysql****.tar.gz -C /usr/local
  • 创建链接
    cd /usr/local
    ln -sv mysql***** mysql
2、创建mysql用户mysql组(超过500的就不是系统用户了,系统用户没有家目录)

groupadd -r -g 306 mysql
useradd -r -g 306 -u 306 mysql

进入mysql目录,里面有个INSTALL-BINARY的文件,里面有具体的安装说明。

3、修改mysql目录下所有文件的属主属组

chown -R mysql.mysql /usr/local/mysql/*

4、设定数据存储目录
  • 创建数据目录:(根据需要指定)
  • 修改数据目录权限:
    chown -R mysql.mysql 数据目录(指定数据目录属主属组为mysql用户mysql组)
    chmod o-rx 数据目录 (其它用户没有任何权限)
    保证数据目录的属主属组是mysql,其他用户没有任何权限
5、进入mysql目录,手动执行数据库初始化脚本

scripts/mysql_install_db --user=mysql --datadir=数据目录

6、脚本执行完之后,要把mysql目录的属主改成root

chown -R root /usr/local/mysql/*

7、在mysql/support-files目录下有mysql.server(mysql启动脚本)
  • 复制并重命名该脚本
    cp support-files/mysql.server /etc/init.d/mysqld
  • 查看一下mysqld是否有执行权限,没有就给执行权限
  • 将mysqld加入到服务列表
    chkconfig --add mysqld
  • 查看是否自动启动是否开启
    chkconfig --list mysqld (2 3 4 5 为on即可)
8、此时mysqld还不能启动,需要修改一下配置文件
  • 默认位置: /etc/my.cnf
  • mysql读取配置文件的方式非常独特
    mysql配置文件是片段式的、集中式的(可以为多个服务配置)
[mysql]——客户端配置 [mysqld]——服务端配置 [client]——对所有的客户端程序都生效
Nach dem Login kopieren
  • mysql读取配置文件的顺序:
    /etc/my.cnf --> /etc/mysql/my.cnf
    --> $BASEDIR/my.cnf (通常是安装目录)
    --> ~/.my.cnf (用户家目录下的配置文件,即使mysql用户没有家目录也找一遍)

如果找到的四处配置文件有冲突,以最后一个为准(后一个覆盖前一个
即使没有任何配置文件,mysql也能跑,在support-files目录下提供了一堆默认配置文件

  • 复制一个配置文件到 /etc/my.cnf
    cp support-files/my-large.cnf /etc/my.cnf
  • 进行编辑修改配置文件
    vi /etc/my.cnf
  • 在[mysqld]片段中加上数据目录配置信息,至关重要
    datadir = /数据目录
9、 启动mysqld服务

service mysqld start
查看启动状态
netstat -tnlp

10、进入mysql数据库

执行mysql发现找不到命令
查看 ls /usr/local/mysql/bin/,发现有 mysql 命令
需要将mysql命令添加至系统目录
创建脚本文件:
vi /etc/profile.d/mysql.sh
添加 export PATH=$PATH:/usr/local/mysql/bin
保存退出
重新登陆,再次执行 mysql 就能进入mysql数据库啦

11、mysql服务器维护了两类变量
  • 服务器变量:定义MySQL服务器运行特征
    查看命令:show global variables [like 'data%'] (调优时使用)
  • 状态变量:保存了MySQL服务器运行时的统计数据
    查看命令:show global status [like 'datadir'] (实时监控使用)
12、设定密码

[方法一]在mysql提示符下执行
mysql>set password for 'username'@'host'=password('password');
修改用户信息之后,要重读授权表
mysql>flush privileges;

[方法二]在Linux命令提示符下执行
# mysqladmin -uUsername -hHost -p password 'password'(如果没有密码可以省略-p)

[方法三]修改mysql库中的user表
update user set Password=password("password") where user="user" and host="***"

创建mysql的root用户远程访问(对所有库.所有表)
mysql>grant all privileges on.to 'root'@'192.16.%.%' identified by "password";

重读授权表
mysql>flush privileges;

[方法四]安装完之后提示的密码修改方式:
./bin/mysqladmin -u root password 'new-password'
./bin/mysqladmin -u root -h localhost.localdomain password 'new-password'

13、将mysql帮助文档添加至帮助命令

vi /etc/man.config
添加一行
MANPATH /usr/local/mysql/man
保存退出

14、创建数据库并指定字符集
CREATE DATABASE `test` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Nach dem Login kopieren
15、创建用户用于SqlYog登录
# 创建一个本地登录的用户,并授予全部权限 mysql> CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass'; mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost' -> WITH GRANT OPTION; # 创建一个远程登录用户,并授予全部权限 mysql> CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass'; mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'%' -> WITH GRANT OPTION; # 最厚要刷新一下授权表 mysql> flush privileges;
Nach dem Login kopieren

原文: Host 'xxx.xx.xxx.xxx' is not allowed to connect to this MySQL server

16、数据备份与恢复

(一)数据备份

# 1、备份一个数据库(根据提示输入密码,如果备份远程数据库,需要加上 -h 参数) $ mysqldump -h host -u username -p database_name > back_name.sql # 2、备份 test 数据库中的 emp 表(根据提示输入密码) $ mysqldump -u username -p test emp > emp.sql # 3、备份 test 数据库中的 emp 表 和 dept 表(根据提示输入密码) $ mysqldump -u username -p test emp dept > emp_dept.sql # 4、备份多个数据库 $ mysqldump -hhostname -uusername -ppassword databasename1 databasename2> multibackupfile.sql # 5、备份所有的数据库 $ mysqldump –all-databases > allbackupfile.sql # 6、只备份数据库结构 $ mysqldump –no-data –databases databasename1 databasename2 databasename3 > structurebackupfile.sql
Nach dem Login kopieren

(二)数据恢复

# 1、还原数据库(根据提示输入密码,如果备份远程数据库,需要加上 -h 参数) $ mysql -hhostname -uusername -ppassword databasename < backupfile.sql # 2、导入数据( 常用source命令,进入某个数据库,指定备份的脚本文件) mysql> source d:\test.sql # 3、将数据库迁移至新服务器 $ mysqldump -uusername -ppassword databasename | mysql –host=*.*.*.* -C databasename
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt von怎么在红帽系统添加mysql. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!