zoukankan      html  css  js  c++  java
  • CentOS 常用命令大全(2)

    系统

    # uname -a               # 查看内核/操作系统/CPU信息
    # head -n 1 /etc/issue   # 查看操作系统版本
    # cat /proc/cpuinfo      # 查看CPU信息
    # hostname               # 查看计算机名
    # lspci -tv              # 列出所有PCI设备
    # lsusb -tv              # 列出所有USB设备
    # lsmod                  # 列出加载的内核模块
    # env                    # 查看环境变量

    资源
    # free -m                # 查看内存使用量和交换区使用量
    # df -h                  # 查看各分区使用情况
    # du -sh <目录名>        # 查看指定目录的大小
    # grep MemTotal /proc/meminfo   # 查看内存总量
    # grep MemFree /proc/meminfo    # 查看空闲内存量
    # uptime                 # 查看系统运行时间、用户数、负载
    # cat /proc/loadavg      # 查看系统负载

    磁盘和分区
    # mount | column -t      # 查看挂接的分区状态
    # fdisk -l               # 查看所有分区
    # swapon -s              # 查看所有交换分区
    # hdparm -i /dev/hda     # 查看磁盘参数(仅适用于IDE设备)
    # dmesg | grep IDE       # 查看启动时IDE设备检测状况

    网络
    # ifconfig               # 查看所有网络接口的属性
    # iptables -L            # 查看防火墙设置
    # route -n               # 查看路由表
    # netstat -lntp          # 查看所有监听端口
    # netstat -antp          # 查看所有已经建立的连接
    # netstat -s             # 查看网络统计信息

    进程
    # ps -ef                 # 查看所有进程
    # top                    # 实时显示进程状态

    用户
    # w                      # 查看活动用户
    # id <用户名>            # 查看指定用户信息
    # last                   # 查看用户登录日志
    # cut -d: -f1 /etc/passwd   # 查看系统所有用户
    # cut -d: -f1 /etc/group    # 查看系统所有组
    # crontab -l             # 查看当前用户的计划任务

    服务
    # chkconfig --list       # 列出所有系统服务
    # chkconfig --list | grep on    # 列出所有启动的系统服务

    程序
    # rpm -qa                # 查看所有安装的软件包

     1.命令安装:yum install mysql-server

     2.自带启动:centos6.2自带安装mysql5.1,root身份登录(mysql -u root -p)没有密码;
        系统->管理->服务,选择mysqld,设置开机自启动并启动服务;

      3.相关命令:
        1)启动服务:service mysqld start 
        2)修改密码:mysql
                            进入mysql命令后执行下面语句:
                            UPDATE mysql.user SET password=PASSWORD('123') WHERE user='root';
                            flush privileges;

       3)导入sql文件命令:source 文件路径;

      4)进入mysql命令:mysql -u 用户名 -p,然后输入密码就可以进入mysql执行环境;

      5)导出数据库或表:mysqldump -u 用户名 -p dataname>dataname.sql;

     

      4.mysql图形工具workbench安装:

       1)下载地址: http://www.mysql.com/downloads/workbench/#downloads 
       2)选择Oralce linux6,下载mysql-workbench-gpl-5.2.37-1el6.i686.rpm
       3)yum安装:yum install rpm包名
            yum卸载:yum -y remove rpm包名

    shell> mysql -u root -p1234 mysql

    mysql> insert into user(Host,User,Password) values ('localhost','_backmysql','databse');
    添加一个来自本机的mysql 用户_backmysql,口令为:1234
    #mysql –u root –p 
    mysql>;GRANT FILE ON *.* TO backup@192.168.1.200 IDENTIFIED BY ‘1234’; 
    mysql>;exit
    开放一个账号backup密码1234给来自IP:192.168.1.200有档案处理的权限
    格式:grant 权限 on 数据库名.表名 用户@登录主机 identified by "用户密码";
    mysql>;grant select,update,insert,delete on *.* to 
    atyu30@10.0.0.100
    identified by "1234";

    1、Login into mysql,create a new user named "xuys":
    Format(MySql4.1.18):
    GRANT [privilage] ON [database Name].[Table Name] TO  [User Name]@"[Server IP]" IDENTIFIED BY '[User Password]';

    e.g.:
    grant select,update,insert,delete on *.* xuys@"192.168.88.234 identified by 'xuys1234';
    GRANT ALL PRIVILEGES ON *.* TO ml@"%" IDENTIFIED BY 'pass'

    To view the result, Excute:
       use mysql;
       select host,user,password from user;

       可以看到在user表中已有刚才创建的xuys用户。host字段表示登录的主机,其值可以用IP,也可用主机名, 将host字段的值改为%就表示在任何客户端机器上能以xuys用户登录到mysql服务器,建议在开发时设为%。
       update user set host = '%' where user = 'xuys';


     

    mysql> SHOW DATABASES;
    2:2、创建一个数据库MYSQLDATA
    mysql> CREATE DATABASE MYSQLDATA;
    3:选择你所创建的数据库
    mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!)
    4:查看现在的数据库中存在什么表
    mysql> SHOW TABLES;
    5:创建一个数据库表
    mysql> CREATE TABLE MYTABLE (name VARCHAR(20), sex CHAR(1));
    6:显示表的结构:
    mysql> DESCRIBE MYTABLE;
    7:往表中加入记录
    mysql> insert into MYTABLE values (”hyq”,”M”);
    8:用文本方式将数据装入数据库表中(例如D:/mysql.txt)
    mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt” INTO TABLE MYTABLE;
    9:导入.sql文件命令(例如D:/mysql.sql)
    mysql>use database;
    mysql>source d:/mysql.sql;
    10:删除表
    mysql>drop TABLE MYTABLE;
    11:清空表
    mysql>delete from MYTABLE;
    12:更新表中数据
    mysql>update MYTABLE set sex=”f” where name=’hyq’;

    在windows中MySql以服务形式存在,在使用前应确保此服务已经启动,未启动可用net start mysql命令启动。而Linux中启动时可用“/etc/rc.d/init.d/mysqld start”命令,注意启动者应具有管理员权限。
    刚安装好的MySql包含一个含空密码的root帐户和一个匿名帐户,这是很大的安全隐患,对于一些重要的应用我们应将安全性尽可能提高,在这里应把匿名帐户删除、 root帐户设置密码,可用如下命令进行:
    use mysql;
    delete from User where User=”";
    update User set Password=PASSWORD(’newpassword’) where User=’root’;
    如果要对用户所用的登录终端进行限制,可以更新User表中相应用户的Host字段,在进行了以上更改后应重新启动数据库服务,此时登录时可用如下类似命令:
    mysql -uroot -p;
    mysql -uroot -pnewpassword;
    mysql mydb -uroot -p;
    mysql mydb -uroot -pnewpassword;
    上面命令参数是常用参数的一部分,详细情况可参考文档。此处的mydb是要登录的数据库的名称。
    在 进行开发和实际应用中,用户不应该只用root用户进行连接数据库,虽然使用root用户进行测试时很方便,但会给系统带来重大安全隐患,也不利于管理技 术的提高。我们给一个应用中使用的用户赋予最恰当的数据库权限。如一个只进行数据插入的用户不应赋予其删除数据的权限。MySql的用户管理是通过 User表来实现的,添加新用户常用的方法有两个,一是在User表插入相应的数据行,同时设置相应的权限;二是通过GRANT命令创建具有某种权限的用 户。其中GRANT的常用用法如下:
    grant all on mydb.* to NewUserName@HostName identified by “password” ;
    grant usage on *.* to NewUserName@HostName identified by “password”;
    grant select,insert,update on mydb.* to NewUserName@HostName identified by “password”;
    grant update,delete on mydb.TestTable to NewUserName@HostName identified by “password”;
    若 要给此用户赋予他在相应对象上的权限的管理能力,可在GRANT后面添加WITH GRANT OPTION选项。而对于用插入User表添加的用户,Password字段应用PASSWORD 函数进行更新加密,以防不轨之人窃看密码。对于那些已经不用的用户应给予清除,权限过界的用户应及时回收权限,回收权限可以通过更新User表相应字段, 也可以使用REVOKE操作。
    下面给出本人从其它资料(www.cn-java.com)获得的对常用权限的解释:
    全局管理权限:
    FILE: 在MySQL服务器上读写文件。
    PROCESS: 显示或杀死属于其它用户的服务线程。
    RELOAD: 重载访问控制表,刷新日志等。
    SHUTDOWN: 关闭MySQL服务。
    数据库/数据表/数据列权限:
    ALTER: 修改已存在的数据表(例如增加/删除列)和索引。
    CREATE: 建立新的数据库或数据表。
    DELETE: 删除表的记录。
    DROP: 删除数据表或数据库。
    INDEX: 建立或删除索引。
    INSERT: 增加表的记录。
    SELECT: 显示/搜索表的记录。
    UPDATE: 修改表中已存在的记录。
    特别的权限:
    ALL: 允许做任何事(和root一样)。
    USAGE: 只允许登录–其它什么也不允许做。



    centos卸载原有的PHP运行环境
    linux类 暂无评论

    如果安装的是centos完全版,那么已经自带有apache等组件,我们要使用kloxo自带的服务器组件,需要先卸载apache、mysql、php等服务。

      卸载Mysql

      # rpm -qa | grep mysql

      # yum remove mysql

      卸载Apache

      # rpm -qa | grep httpd

      # yum remove httpd

      卸载PHP

      # rpm -qa | grep php

      # yum remove php

      注意:如果卸载不掉,系统一般会提示包的依赖关系,并且列出依赖的包的名称,先卸载提示依赖的包就可以了。如果实在卸载不掉,可以添加-nodeps参数进行强制卸载,比如卸载php-5.2.6-11:

      rpm -e php-5.2.6-11 -nodeps


    centos下查看自己的系统是多少位的
    2010-10-17 6:09
    [root@localhost ~]# uname -a
    Linux localhost.localdomain 2.6.18-164.el5 #1 SMP Thu Sep 3 03:33:56 EDT 2009 i686 i686 i386 GNU/Linux
    [root@localhost ~]# getconf WORD_BIT
    32
    [root@localhost ~]# echo $HOSTTYPE
    i686
    这个是我的机子,如果是64位的话,第一条跟第三条命令会显示: x86_64


    1.临时修改主机名

    显示主机名:

    zhouhh@zzhh64:~$ hostname
    zhh64

    修改主机名:

    zhouhh@zzhh64:~$ sudo hostname zzofs
    zhouhh@zzhh64:~$ hostname
    zzofs

    看一下$PS1

    zhouhh@zzhh64:~$ echo $PS1
    /[/e]0;/u@/h: /w/a/]${debian_chroot:+($debian_chroot)}/u@/h:/w/$
    @符号后面跟/h即主机名。

    命令行前的提示符主机名怎么没有更新呢?

    重新打开一个终端,就看到更新了。

    zhouhh@zzofs:~$

    2.永久修改主机名

    以上的修改只是临时修改,重启后就恢复原样了。

    redhat/centos上永久修改

    [root@localhost ~]# cat /etc/sysconfig/network
    NETWORKING=yes
    HOSTNAME=localhost.localdomain
    GATEWAY=192.168.10.1

    修改network的HOSTNAME项。点前面是主机名,点后面是域名。没有点就是主机名。

    [root@localhost ~]# vi /etc/sysconfig/network

    NETWORKING=yes
    NETWORKING_IPV6=no
    HOSTNAME=gdbk

    这个是永久修改,重启后生效。目前不知道怎么立即生效。

    想立即生效,可以同时采用第一种方法。

     

    还有一个就是修改

    /etc/hosts

    127.0.0.1              localhost.localdomain
    ::1             hdirect30 hdirect30

     

    127.0.0.1后面的那一部分。

     

    deb/ubuntu上修改 :

    hostname
    localhost.localdomain

    sudo vi /etc/hostname

    在/etc/hostname里面直接填上hostname

    zhouhh@localhost:~$ cat /etc/hostname
    zhh64

    重启后,提示符变成了。

    zhouhh@zhh64:~$

    如果不想重启,则用hostname名令。

    3. 其他修改方式

    用sysctl 修改kernel.hostname

    查看:

    zhouhh@zhh64:~$ sysctl kernel.hostname
    kernel.hostname = zhh64

    修改:

    zhouhh@zhh64:~$ sudo sysctl kernel.hostname=zzh
    kernel.hostname = zzh

    重新打开shell就变成如下hostname了zhh

    zhouhh@zzh:~$

    4. hosts文件与主机名修改无关

    一些网络文章中提出修改主机名还需修改Hosts文件,其实hosts文件和主机名修改无关。

    cat /etc/hosts

    127.0.0.1       localhost
    192.168.11.116  zhh64
    192.168.12.14 centdev

    # The following lines are desirable for IPv6 capable hosts
    ::1     localhost ip6-localhost ip6-loopback
    fe00::0 ip6-localnet
    ff00::0 ip6-mcastprefix
    ff02::1 ip6-allnodes
    ff02::2 ip6-allrouters
    ff02::3 ip6-allhosts

    hosts文件是配本地主机名/域名解析的。

    如我本机ip是192.168.11.116名字是zhh64.就可以直接访问主机名。

    zhouhh@zhh64:~$ ping zhh64
    PING zhh64 (192.168.11.116) 56(84) bytes of data.
    64 bytes from zhh64 (192.168.11.116): icmp_seq=1 ttl=64 time=0.077 ms

    zhouhh@zhh64:~$ ping centdev
    PING centdev (192.168.12.14) 56(84) bytes of data.
    64 bytes from centdev (192.168.12.14): icmp_seq=1 ttl=63 time=0.726 ms

    如果是小型局域网,就可以将hosts文件机器配全了,拷贝到每个机器,然后在ssh访问时用主机名直接访问。

    zhouhh@zhh64:~$ ssh centdev
    zhouhh@centdev's password: 
    Last login: Wed Feb  3 10:03:09 2010 from 192.168.11.116
    [zhouhh@centdev ~]$ 
    [zhouhh@centdev ~]$ ifconfig eth0 | grep inet
              inet addr:192.168.12.14  Bcast:192.168.12.255  Mask:255.255.255.0
              inet6 addr: fe80::21e:c9ff:fe57:2575/64 Scope:Link

    4.参考

    http://www.ducea.com/2006/08/07/how-to-change-the-hostname-of-a-linux-system/



    #!/bin/bash
    # RMAN SCRIPTS install_mysql.sh
    # by dbabc 2011/10/09
    # User specific environment and startup programs
    PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/bin
    export PATH
    yum -y install gcc gcc-c++ libtool autoconf automake imake libxml2-devel expat-devel ncurses-devel cmake bison
    mkdir -p /usr/local/mysql/
    mkdir -p /opt/data/mysql/
    groupadd -g 502 mysql
    useradd -u 502 -g mysql mysql
    chown mysql.mysql -R /opt/data/mysql/
    cd /usr/local/src
    wget http://www.cmake.org/files/v2.8/cmake-2.8.5.tar.gz
    tar zxf cmake-2.8.5.tar.gz -C /usr/local/src
    cd /usr/local/src/cmake-2.8.5
    ./bootstrap
    make -j2 && make install
    cd /usr/local/src
    wget http://mirrors.sohu.com/mysql/MySQL-5.5/mysql-5.5.16.tar.gz
    tar zxf mysql-5.5.16.tar.gz -C /usr/local/src
    cd /usr/local/src/mysql-5.5.16
    CFLAGS="-O3" CXX=gcc
    CXXFLAGS="-O3 -felide-constructors -fno-exceptions -fno-rtti"
    /usr/local/bin/cmake . -DCMAKE_INSTALL_PREFIX=/usr/local/mysql 
    -DMYSQL_DATADIR=/opt/data/mysql 
    -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock 
    -DSYSCONFDIR=/etc 
    -DDEFAULT_CHARSET=utf8 
    -DDEFAULT_COLLATION=utf8_general_ci 
    -DEXTRA_CHARSETS=all 
    -DWITH_MYISAM_STORAGE_ENGINE=1 
    -DWITH_INNOBASE_STORAGE_ENGINE=1 
    -DWITH_ARCHIVE_STORAGE_ENGINE=1 
    -DWITH_BLACKHOLE_STORAGE_ENGINE=1 
    -DENABLED_LOCAL_INFILE=1 
    -DWITH_DEBUG=0
    make -j2&& make install
    cp support-files/my-medium.cnf /etc/my.cnf
    #vi /etc/mysql/my.cnf
    #datadir = /data/mysql
    /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/opt/data/mysql --no-defaults
    chgrp -R mysql /usr/local/mysql/.
    cp support-files/mysql.server /etc/init.d/mysql
    chmod +x /etc/init.d/mysql
    chkconfig --add mysql
    chkconfig --level 345 mysql on
    echo "/usr/local/mysql/lib/mysql" >> /etc/ld.so.conf
    echo "/usr/local/lib" >>/etc/ld.so.conf
    ldconfig
    ln -s /usr/local/mysql/lib/mysql /usr/lib/mysql
    ln -s /usr/local/mysql/include/mysql /usr/include/mysql
    service mysql start
    /usr/local/mysql/bin/
    echo "PATH=$PATH:/usr/local/mysql/bin" >> /etc/profile
    . /etc/profile
    exit


    CentOS系统安装好MySQL后,默认情况下不支持用户通过非本机连接上数据库服务器,下面是解决方法:

    1、在控制台执行 mysql -u root -p mysql,系统提示输入数据库root用户的密码,输入完成后即进入mysql控制台,这个命令的第一个mysql是执行命令,第二个mysql是系统数据名称,不一样的。

    2、在mysql控制台执行 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'MyPassword' WITH GRANT OPTION;

    3、在mysql控制台执行命令中的 'root'@'%' 可以这样理解: root是用户名,%是主机名或IP地址,这里的%代表任意主机或IP地址,你也可替换成任意其它用户名或指定唯一的IP地址;'MyPassword' 是给授权用户指定的登录数据库的密码;另外需要说明一点的是我这里的都是授权所有权限,可以指定部分权限,GRANT具体操作详情 见:http://dev.mysql.com/doc/refman/5.1/en/grant.html

    4、不放心的话可以在mysql控制台执行 select host, user from user; 检查一下用户表里的内容




    修改mysql root 密码

     

    Method 1:
    在/usr/local/mysql/bin/下:
    ./mysqladmin -u root password ‘new_password’
    一般安装时用此方法设置。

    Method 2:
    在mysql状态下:
    mysql>UPDATE user SET password=PASSWORD(‘new_password’) WHERE user=’root’;
    mysql>FLUSH PRIVILEGES;

    Method 3:
    mysql>SET PASSWORD FOR root=PASSWORD(‘new_password’);


    mysql> GRANT ALL PRIVILEGES ON *.* TO root@"%" IDENTIFIED BY "root";

    mysql> flush privileges;

     

    第一句中"%"表示任何主机都可以远程登录到该服务器上访问。如果要限制只有某台机器可以访问,将其换成相应的IP即可,如:

    GRANT ALL PRIVILEGES ON *.* TO root@"172.168.193.25" IDENTIFIED BY "root";

    第二句表示从mysql数据库的grant表中重新加载权限数据。因为MySQL把权限都放在了cache中,所以在做完更改后需要重新加载。

     

    2、修改/etc/mysql/my.cnf,需要root用户权限。找到文件中的:

     

     

    1. bind-address          = 127.0.0.1  

    将其注释掉,保存。

     

    3、重新启动MySQL服务器。执行下面的几条命令即可:

    # /usr/bin/mysqladmin -u root -p shutdown

    # /usr/bin/mysqld_safe &

     

    如果mysqladmin和mysql_safe不在/usr/bin目录中,可以通过whereis命令查找,例如:

    # whereis mysqladmin
    mysqladmin: /usr/bin/mysqladmin /usr/share/man/man1/mysqladmin.1.gz

  • 相关阅读:
    [转载]小谈网络游戏同步
    [ASE][Daily Scrum]11.06
    [Proposal]Tank Battle——Infinite
    [proposal][app]Watch your time!
    [Proposal]Nano-Diary(纳日记)
    LaTeX中用BibTex管理参考文献
    matlab化简符号表达式
    placeholder颜色变化
    链接图片外边出现蓝框(IE8/IE9/IE10)
    图标排列
  • 原文地址:https://www.cnblogs.com/benbenduo/p/3864888.html
Copyright © 2011-2022 走看看