LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 880|回复: 8

[mysql]根据北南兄的帖子,第一次用mysql,如何解决这个问题

[复制链接]
发表于 2004-4-19 17:43:40 | 显示全部楼层 |阅读模式
原贴如下:
3.mysql的一点用法,最基础的的基础
1]如何创建mysqld数据库的管理用户??
数据库安装好后,我们应该为mysql数据库创建一个管理帐号。要把root用户设置为管理员,我们应该运行下面的命令;
[root@linuxsir01 root]# /opt/mysql/bin/mysqladmin -u root password 123456
[root@linuxsir01 root]#
通过上面的命令,我们可以知道,mysql数据库的管理员是root,密码是123456。

运行出现这样的错误:是端口不存在的意思吗?
[root@lgg mysql]# /opt/mysql/bin/mysqladmin -u root password 123456
/opt/mysql/bin/mysqladmin: connect to server at 'localhost' failed
error: 'Can't connect to local MySQL server through socket '/opt/mysql/var/mysql.sock' (2)'
Check that mysqld is running and that the socket: '/opt/mysql/var/mysql.sock' exists!
[root@lgg mysql]#
 楼主| 发表于 2004-4-19 20:22:06 | 显示全部楼层
顶一下
发表于 2004-4-20 02:11:29 | 显示全部楼层
mysql
没启动。
发表于 2004-4-20 10:37:09 | 显示全部楼层
要这样启动MYSQL
service mysqld start
用safe_mysqld好像不行,我试过.
发表于 2004-4-20 13:33:14 | 显示全部楼层
sage_mysqld 可以的,如果只是运行的话,,怀疑是你那个时候设置错误。
发表于 2004-4-20 14:55:29 | 显示全部楼层
错误提示显示是你没有启动mysql服务。
chkconfig mysql on
service mysql start
发表于 2004-4-20 16:44:23 | 显示全部楼层
可能是这个问题:
引自北南:

   我上面写的没有错,我是用beinan这个帐号来编译的,进程的调用是通过beinan这个帐号进行的。也一样以运行。如果不指定,系统会默认为mysql用户和组。如果编译时不指定,当然得添加mysql用户和组,然后再来编译安装了。

指定一个有普通权限的用户来启动mysql进程,主要是为了便于管理。

如果大家想用mysql作为启动进程的帐号,那就应该添加一个mysql用户和组。

# groupadd mysql
# useradd -g mysql mysql


兄弟如果在编译时,指定一个普通用户来运行mysql,就应该看一下权限操作,在上面有写。比如chmod和chown的运用。




多谢兄弟提出疑问,我在行文中没有把这件事说清楚。有时间我会补充一下。

再次感谢

北南 呈上



把他的帖子看看清楚
 楼主| 发表于 2004-4-20 17:55:48 | 显示全部楼层

启动时是这样的,直接就没有启动吧
我可是完全一步一步的根据这个帖子弄的

[lgg@lgg mysql]#  /opt/mysql/share/mysql/mysql.server start
[lgg@lgg mysql]# Starting mysqld daemon with databases from /opt/mysql/var
040420 17:42:47  mysqld ended

[lgg@lgg mysql]# ps -aux | grep mysql
root      2256  0.0  0.0  4164    4 ?        S    07:15   0:00 /bin/sh /usr/bin/mysqld_safe --datadir=/var/lib/mysql --pid-file=/var/lib/mysql/lgg.pid
mysql     2289  0.0  0.4 39048  560 ?        S    07:15   0:00 [mysqld]
mysql     2310  0.0  0.4 39048  560 ?        S    07:15   0:00 [mysqld]
mysql     2311  0.0  0.4 39048  560 ?        S    07:15   0:00 [mysqld]
mysql     2312  0.0  0.4 39048  560 ?        S    07:15   0:00 [mysqld]
mysql     2313  0.0  0.4 39048  560 ?        S    07:15   0:00 [mysqld]
mysql     2314  0.0  0.4 39048  560 ?        S    07:15   0:00 [mysqld]
mysql     2350  0.0  0.4 39048  560 ?        S    07:16   0:00 [mysqld]
mysql     2351  0.0  0.4 39048  560 ?        S    07:16   0:00 [mysqld]
mysql     2352  0.0  0.4 39048  560 ?        S    07:16   0:00 [mysqld]
mysql     2353  0.0  0.4 39048  560 ?        S    07:16   0:00 [mysqld]
root      3571  0.0  0.5  4816  640 pts/2    S    17:48   0:00 grep mysql
[lgg@lgg mysql]#

http://www.linuxsir.cn/forum.php?mod=viewthread&tid=77079



原贴是:
]配制mysql:安装只是第一步,我们还要对mysql进行相应的配制;

一般的情况下mysql要找配制文件my.cnf,位置在/etc目录下,所以我们得把文件my.cnf文件放到/etc/目录下。让mysql服务器启动时能找到它。

我们安装好mysql后,配制文件应该在/opt/mysql/share/mysql目录中,配制文件有几个,比如my-huge.cnf my-medium.cnf my-large.cnf my-small.cnf
,不同的流量的网站和不同配制的服务器环境,当然需要有不同的配制文件了。一般的情况下,my-medium.cnf这个配制文件就能满足我们的大多需要;

进入/opt/mysql这个目录,看一下是不是已经安装好了呢??

[root@linuxsir01 mysql-4.0.16]# cd /opt/mysql/
[root@linuxsir01 mysql]# ls
bin include info lib libexec man mysql-test share sql-bench

我们把/opt/mysql/share/mysql这个目录下的my-medium.cnf,复制为my.cnf到/etc目录下。
[root@linuxsir01 mysql]# cp /opt/mysql/share/mysql/my-medium.cnf /etc/my.cnf

做了这些工作以后,还得创造MySQL授权表, 否则数据库也是启动不了。mysql_install_db,这个命令的用途就是做这个的。mysql的命令都安装到了/opt/mysql/bin这个目录中。

[root@linuxsir01 mysql]#/opt/mysql/bin/mysql_install_db

运行mysql_install_db命令过后,我们查看/opt/mysql就会发现,有个var的目录。这个目录,就是用来装所有数据库的位置,比如我们创建了linuxsir的数据库后,就在在/opt/mysql/var目录中有linuxsir的目录。这回应该明白了吧。

4]启动mysql服务器,可能这是最轻松的了,不过也不能高兴的太早,因为有时会出现权限方面的错误。

mysql服务器启动,应该是/opt/mysql/share/mysql目录中的 mysql.server
启动方法是:
[root@linuxsir01 mysql]# /opt/mysql/share/mysql/mysql.server start

启动过后,我们要查看mysql是否启动了,应该用下面的命令;

[root@linuxsir01 mysql]# ps -aux | grep mysqld

如果出现的仅仅是如下的一行,那mysql是没有启动成功。

root 3345 0.0 0.1 5812 648 pts/2 S 17:41 0:00 grep mysqld

我们如何查看错误信息呢?在哪里查看呢?应该到/opt/mysql/var目录中去找一个带有.err后缀的文件;
[root@linuxsir01 var]# cd /opt/myql/var
[root@linuxsir01 var]# more *.err

可能会出现存在下面的错误信息:

031203 14:49:10 mysqld started
031203 14:49:10 Can't start server : Bind on unix socket: Permission denied
031203 14:49:10 Do you already have another mysqld server running on socket: /tmp/mysql.sock ?
031203 14:49:10 Aborting

031203 14:49:10 /opt/mysql/libexec/mysqld: Shutdown Complete

031203 14:49:10 mysqld ended

其实这是权限方面的事,我们把权限设置一下就OK了。我们要设置的权限是/opt/mysql/var的目录。要设置为1777。

方法是:

[root@linuxsir01 mysql]# chmod -R 1777 /opt/mysql/var

然后再重启mysql服务器。

[root@linuxsir01 mysql]# /opt/mysql/share/mysql/mysql.server start

是不是成功了呢??

[root@linuxsir01 mysql]#ps -aux | grep mysql
发表于 2004-4-22 10:50:27 | 显示全部楼层
我这里用"service mysql(d) start"都提示如下 错
unrecognized service
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表