linux2

16일차 mysql

컴공 2013. 2. 26. 21:25
반응형

mysql -- nodeps 없이 설치하기.
※ 유의사항
1) 의존성 오류(Failed dependencies)를 절대 무시하지 마라.
2) 의존성 오류를 제기한 패키지부터 먼저 작업(설치, 혹은 삭제)
3) lib로 시작하고 중간에 .SO.가 있는 경우는 무시한다.(대부분 패키지가 아니다.)
4) 가급적 의존성 무시(nodeps)를 사용하지 말자.
5) mysql. mysql-xx 등 있을 시 반드시 대표 패키지부터 작업한다.
6) 나머지는 화면에 보이는 순서대로 작업한다.

mysql-connect
밑에 두 개는 의존성 제거 후 설치한다. java는 쓸일이 없어서 그냥 설치했다.
[root@ns ~]# rpm -ivh /mp/Packages/mysql-connector-java-5.1.17-6.el6.noarch.rpm
[root@ns ~]# rpm -ivh /mp/Packages/mysql-devel-5.1.61-4.el6.i686.rpm --nodeps

[root@ns ~]# rpm -qa|grep mysql|cat -n
     1  mysql-bench-5.1.61-4.el6.i686
     2  mysql-test-5.1.61-4.el6.i686
     3  mysql-connector-odbc-5.1.5r1144-7.el6.i686
     4  mysql-5.1.61-4.el6.i686
     5  mysql-server-5.1.61-4.el6.i686
     6  mysql-connector-java-5.1.17-6.el6.noarch
     7  mysql-libs-5.1.61-4.el6.i686
     8  mysql-devel-5.1.61-4.el6.i686
--------------------------------------cat으로 해서 8개가 나오면 성공!

MySQL - DBMS (Database Management System)
Mysql의 특징
1) 모든 명령어 끝에 ';'를 붙여준다.
2) 주 명령어문 뒤에 '쿼리 OK'메시지가 뜬다.
3) 긴 명령문을 자동 줄 바꿈 대신 그냥 엔터쳐도 된다.

# 데몬 시작 명령어
# /etc/rc.d/init.d/mysqld start  // 데몬을 처음 구동시 mysql에 관련한 초기 내용이 나타난다.

[root@ns ~]# /etc/rc.d/init.d/mysqld start
MySQL 데이타베이스 초기화 중: Installing MySQL system tables...
OK
Filling help tables...
OK

To start mysqld at boot time you have to copy
support-files/mysql.server to the right place for your system

PLEASE REMEMBER TO SET A PASSWORD FOR THE MySQL root USER !
To do so, start the server, then issue the following commands:

/usr/bin/mysqladmin -u root password 'new-password'  // 새로운 root 비밀번호 설정 방법
/usr/bin/mysqladmin -u root -h ns.escit.net password 'new-password'  // ns.escit.net처럼 도메인으로 접속 가능.

Alternatively you can run:
/usr/bin/mysql_secure_installation // 초기 보안설정 진행
which will also give you the option of removing the test
databases and anonymous user created by default. This is
strongly recommended for production servers.

See the manual for more instructions.

You can start the MySQL daemon with:
cd /usr ; /usr/bin/mysqld_safe &

1. /etc/rc.d/init.d/mysqld stop 을 쳐줍니다 *MYSQL 데몬 종료
(sudo killall mysqld 도 되는데 저는 killall이라는 말이 무서워서 안씁니다. 정말로요.)

2. # mysqld_safe --skip-grant & 를 쳐줍니다
▲ 초기화

3. mysql 접속

>use mysql
>update user set password=password('암호') where user='root';

You can test the MySQL daemon with mysql-test-run.pl
cd /usr/mysql-test ; perl mysql-test-run.pl

Please report any problems with the /usr/bin/mysqlbug script!

접속방법
# mysql -u root -p [database 명]
# [비번]

mysql> show databases;
mysql> use [데이터베이스명]
mysql> show tables;
mysql> describe [테이블명] // 테이블의 정보를 확인 [ 칼럼과, 레코드가 나타난다]
mysql> create database [데이터베이스명]
mysql> create table [테이블명] ([속성명] [인자 형식], ...);
mysql> insert into [테이블명] ([속성명], ....) values ([값], ...);
mysql> update [테이블명] set [속성명]=[값] where [속성명] like '[값]%'; // 자리수로 찾으려면 '[값]__'
mysql> delete from [테이블명] where [속성명]=[값];
mysql> drop database [테이블명];

비번 바꾸기
mysql> use mysql;
mysql> update user set password=password('n00$e') where user='root';
password형식으로 n00$e를 암호화하여 password에 저장한다.
mysql> select host, user, password from user;
=> 루트 비번이 변경됨을 확인 -> 반드시 데몬을 재실행

실습문제
-조건-
a. Database : backtrack
b. Table : anonymous
c. Fieldname : num / name / id / pw
d. FiledType : char(4) / char(4) / char(12) / varchar(30)

추가할 내용
1. samadal : samadal(id), samdal(pw)
2. noose : net2free(id), nialove(pw)
3. noose2 : net3free(id), melo(pw)
4.noose0 : net0free(id), testnoose(pw)
noose란 단어를 포함하는 사용자 비번을 모두 test로 변경하시오.
samadal 사용자의 id만 ""로 만드시오.

mysql> create database backtrack;
Query OK, 1 row affected (0.00 sec)  //Query OK는 주 명령어 뒤에 나타난다. 

mysql> use backtrack
Database changed
mysql> create table anonymous (num char(4), name char(4),
    -> id char(12), pw varchar(30));
Query OK, 0 rows affected (0.03 sec)

mysql> insert into anonymous values("1","samadal","samadal","samdarl");
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> select * from anonymous;
+------+------+---------+---------+
| num  | name | id      | pw      |
+------+------+---------+---------+
| 1    | sama | samadal | samdarl |
+------+------+---------+---------+
1 row in set (0.00 sec)

mysql> insert into anonymous values("2","noose","net2free","nialove");
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> insert into anonymous values("3","noose2","net3free","melo");
Query OK, 1 row affected, 1 warning (0.00 sec)

mysql> insert into anonymous values("4","noose0","net0free","testnoose");

mysql> update anonymous set pw="test" where name like 'noos%';

mysql> update anonymous set id="" where name like "samada_";

 

반응형

'linux2' 카테고리의 다른 글

17일차 phpadmin 설치와 원격 접속!  (0) 2013.02.27
mysql - grant 구문  (0) 2013.02.27
15일차 아파치웹서버(httpd), php  (0) 2013.02.25
Mac address 재생성 방법  (0) 2013.02.25
centos IP alias (다중 아이피 설정)  (0) 2013.02.22