mysql安装过程(最后一步没有反应)

分类:c与mysql
2007-05-21 16:25 阅读(?)评论(0)
今天又琢磨了一下午MYSQL的安装过程,基本比较顺利,就是最后一步启动的时候提示找不到mysqld,不过还算有进展,现总结如下:
要在ROOT权限下,否则每个语句都要加上sudo,之前就是吃了这个亏,傻乎乎的!
step1:
shell> groupadd mysql
shell> useradd -g mysql mysql
shell> tar -xvf - mysql-5.0.27
shell> cd mysql-5.0.27
shell> ./configure --prefix=/usr/local/mysql --with-charset=gb2312
shell> make
shell> make install
shell> cp support-files/my-medium.cnf /etc/my.cnf
shell> cd /usr/local/mysql
shell> bin/mysql_install_db --user=mysql
shell> chown -R root  .
shell> chown -R mysql var
shell> chgrp -R mysql .

shell> bin/mysqld_safe --user=mysql &
应该出现:# Starting mysqld daemon with databases from /usr/local/mysql/var   如果出现 mysql ended这样的语句,表示Mysql没有正常启动,你可以到log中查找问题,Log文件的通常在/etc/my.cnf中配置。大多数问题是权限设置不正确引起的。还好,我的出现了。
shell>/usr/local/mysql/bin/mysqladmin -u root password 'yangcan'

下面的命令就没有成功了,还得继续找原因阿 ?
    # cp support-files/mysql.server /etc/rc.d/init.d/mysqld   //copy编译目录的一个脚本
    # chmod 700 /etc/init.d/mysqld //设置使mysql每次启动都能自动运行
    # chkconfig --add mysqld
    # chkconfig --level 345 mysqld on  

14.# service mysqld start //启动mysqld服务
    # netstat -atln   //查看3306端口是否打开。要注意在防火墙中开放该端口。
启动netstat -altn ,发现3306端口已经打开了,
利用ps -aux 查看进程,发现存在sqld,而且利用系统-》系统管理-》网络工具里的端口扫描,明确提示3306已经打开sqld!
是否就是表示MYSQL已经运行了呢,不明白!




mysql下的常用命令(一)
     学习mysql也有一些时间了,今天我把我认为常用的一些命令再在此总结一下(事实上网上已经有很多写的很不错的文章)。
      我不是在服务器上使用mysql,所以没有把它加到系统服务里去,若想加入系统服务,可参考安装文件下的readme.txt.
      转到mysql的安装目录下的bin文件,里面有所有mysql工具命令。我认为常用的有:
  • 启动mysql服务: mysqld_safe -user=mysql&     ##ubuntu下要用sudo来启动,启动后,mysql正常运行的话,就可进行一些管理操作了。
  • 登陆本地mysql服务:mysql -uroot -ppassword     ##要管理需要用root权限
  • 常 用mysql操作命令:                                                                                              mysql>CREATE DATABASE databasename(创建数据库);                                           mysql>USE databasename(选择数据库);                                                                    mysql >CREATE TABLE tablename(...)(创建数据表);                                           mysql>DROP TABLE tablename(删除数据表);                                                   mysql>DROP DATABASE database(删除数据库)                                                         mysql >SHOW DATABASES(显示数据库);                                                             mysql>SHOW TABLES (显示数据表);                                                             mysql>DESCRIBE tablename(显示表的结构);                          SELECT,UPDATE,DELETE,INSERT SQL语句用法相同,在此就不多说了。
  • mysql的导入导出操作:                                                                                             mysqldump -uroot -ppassword --opt databasenaem> /home/chenheng/databasename.sql(导出);                                                               mysql> use database;                                                                                        mysql>source /home/chenheng/databasename.sql(导入)。
  • 忘记root密码的解决 办法:在启动Mysql服务器时加上参数--skip-grant-tables来跳过授权表的验证    (./safe_mysqld --user=mysql --skip-grant-tables &),这样我们就可以直接登陆Mysql服务器,
       然后再修改root用户的口令,重启Mysql就可以用新口令登陆了。 
  • mysql用户相关技巧;
    格式:grant select on 数据库.* to 用户名@登录主机 identified by ‘密码’
    例如增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:
    grant select,insert,update,delete on *.* to test1@\"%\" Identified by \"abc\";
    这是一种很危险的作法,在此仅仅作为实例!
  •   修改表中字段属性:                                                                                                       alter table register change column office_number office_number varchar(15) not null default '0000';

mysql的最基本命令
mysql服务启动:
sudo mysqld_safe --user=root &
mysql服务停止:
sudo mysqladmin shutdown
mysql启动:
sudo mysql -u root
密码设置:
mysql> GRANT ALL PRIVILEGES ON *.* TO root@localhost IDENTIFIED BY "123456";
//123456为密码
设置密码后启动mysql:
sudo mysql -u root -p
设置密码后停止服务:
sudo mysqladmin shutdown -p

分享到:
  最后修改于 2007-06-03 11:12    阅读(?)评论(0)
 
表  情:
加载中...
 

请各位遵纪守法并注意语言文明