欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

fedora 16 yum安装mysql后怎样启动,以及添加为系统服务_MySQL

程序员文章站 2022-06-03 11:00:13
...
Fedora bitsCN.com

fedora 16 yum安装mysql后怎样启动,以及添加为系统服务

1 yum 安装mysql

#yum install mysql mysql-server mysql-devel

如果遇到 ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var

可以使用下面的命令:

启动mysql服务

#systemctl start mysqld.service

设置mysqld为开机自启动

#systemctl enable mysqld.service

2、systemctl的用法

该命令为系统进程管理命令; 对比表,以apache / httpd 为例

任务 旧指令 新指令

使某服务自动启动 chkconfig --level 3 httpd on systemctl enable httpd.service

使某服务不自动启动 chkconfig --level 3 httpd off systemctl disable httpd.service

检查服务状态 service httpd status systemctl status httpd.service(服务详细信息) systemctl is-active httpd.service (仅显示是否 Active)

显示所有已启动的服务 chkconfig --list systemctl list-units --type=service

启动某服务 service httpd start systemctl start httpd.service

停止某服务 service httpd stop systemctl stop httpd.service

重启某服务 service httpd restart systemctl restart httpd.service

3、 安装后可以这样查看mysql的相应命令的安装位置

查找mysql服务器文件的安装位置

#rpm -ql mysql-server

查找mysql客户端文件的安装位置

#rpm -ql mysql

4、系统默认没有安装mysql管理数据库,运行安装命令

#mysql_install_db

或者加上参数

#mysql_install_db --user=root --basedir=/usr --datadir=/var/lib/mysql

安装完mysql管理数据库后,可以启动mysql了,可以这样查看相应的basedir和datadir的值。

启动mysql

#mysqld_safe --user=root &

查找mysqld的进程号

#ps aux|grep mysqld

结束mysqld,进程号由上面的命令得到,注意是 /usr/bin/mysqld 的进程号,而不是 /bin/sh /usr/bin/mysqld_safe 的进程号。

#kill 35431

5、下载一个mysql的Linux二进制压缩安装包(版本号差不多就行,比如都是5.5.xx)中的support-files/mysql.server文件,修改其中的两行。

basedir=/usr

datadir=/var/lib/mysql

搜索'start'段,在 $bindir/mysqld_safe --datadir="$datadir" 修改为 $bindir/mysqld_safe --user=root --datadir="$datadir" 。

然后

#cp mysql.server /etc/rc.d/init.d/mysqld

#chmod +x /etc/rc.d/init.d/mysqld

至此,mysql就成功注册为服务了,可以使用 #service mysqld start|stop|restrat 命令来运行mysql了。

启动mysql

#service mysqld start

给mysql的root用户添加密码123

#mysqladmin -u root password 123

使用mysql命令行客户端

#mysql -u root -p 123

6、 启动 mysqld.service 出现无法启动的问题

用service mysqld start启动服务时,出现如下错误:

Redirecting to /bin/systemctl start mysqld.service

Failed to issue method call: Access denied

用systemctl start mysql.service时,出现如下错误:

Failed to issue method call: Unit mysql.service failed to load: No such file or directory. See system logs and 'systemctl status mysql.service' for details.

直接输入mysql出现如下错误:

ERROR 2002 (HY000): Can't connect to local MySQL server through socket '/var/lib/mysql/mysql.sock' (2)

解决方法:mysql的拥有者是root,而mysql是用mysql用户身份执行当然写不进去了,是系统权限的问题,chown -R mysql:mysql /var/lib/mysql/ 就可以了

bitsCN.com
相关标签: mysql