04.06.2008MySQL
Ставим разумеется из портов, последняя версия /usr/ports/databases/mysql51-server/
в /etc/make.conf добовляем некоторые опции компиляции:
.if ${.CURDIR} == ${PORTSDIR}/databases/mysql51-server
# кодировка
WITH_CHARSET=cp1251
WITH_COLLATION=cp1251_binBUILD_OPTIMIZED=yes
BUILD_STATIC=yes
.endif
ставим ее как обычно make качает 26 метров и make install
ошибок нет, все ок. делаем
[miha@] /usr/ports/databases/mysql51-server/> rehash
[miha@] /usr/ports/databases/mysql51-server/> mysql_install_db
Installing MySQL system tables…
OK
Filling help tables…
OK
….
создаются базы на диске /var/db/mysql/, ставим юзера и группу mysql
cd /var/db/mysql
chgrp -R mysql .
chown -R mysql .
в файл /etc/rc.conf добавляем строку mysql_enable=”YES”
стартуем
Starting mysql.
проверяем
mysql 851 1 849 684 0 I p0 0:00,05 /bin/sh /usr/local/bin/mysqld_safe –defaults-extra-file=/var/db/mysql/my
mysql 899 851 849 684 0 S p0 0:00,54 /usr/local/libexec/mysqld –defaults-extra-file=/var/db/mysql/my.cnf –ba
root 901 687 900 684 2 S+ p0 0:00,01 grep mysqld
какбудто все работает.
Делаем конфиг, по умолчанию он должен лежать в /usr/local/etc/my.cnf , если нет какихто определенных требований или знаний
можно взять один из предустановленных конфигов расположенных в /usr/local/share/mysql/
my-large.cnf для систем с большим обьемом памяти
my-medium.cnf MySQL используется совместно с другими приложениями
my-small.cnf для систем с малым обьемом памяти
наш случай это my-medium.cnf , копируем его в /usr/local/etc/ и переименовываем в my.cnf
Теперь в целях безопасности необходимо сменить root пароль, по умолчанию он пустой и удалить гостевые учетные записи созданные по дефолту
цепляемся к нашему MySQL серверу и начинаем
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.1.24-rc FreeBSD port: mysql-server-5.1.24_1
>Type ‘help;’ or ‘\h’ for help. Type ‘\c’ to clear the buffer.
mysql> show databases;
+——————–+
| Database |
+——————–+
| information_schema |
| mysql |
| test |
+——————–+
3 rows in set (0.01 sec)
mysql> use mysql;
mysql> DELETE FROM user WHERE user=”;
Query OK, 2 rows affected (0.01 sec)
mysql> DELETE FROM user WHERE host!=’localhost’;
Query OK, 2 rows affected (0.00 sec)
mysql> UPDATE user SET password=PASSWORD(’тут пароль’);
Query OK, 1 row affected (0.01 sec)
Rows matched: 1 Changed: 1 Warnings: 0
mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)
mysql> exit
Bye
Основные команды для работы с БД
| USE [имя_БД]; | Выбираем базу к которой будем производить запрос |
| SHOW DATABASES; | Показывает все базы данных |
| DESCRIBE [имя_таблицы]; | показывает структуру таблицы. т.е. выводит имена столбцов и тип данных который хранится в них |
| CREATE DATABASE [имя_БД]; | создать базу данных |
| SELECT | Выбрать из базы. на этой команде построена вся работа с базой, позволяет выбрать из таюлицы нужную информацию.
Например: SELECT * FROM user; Выведет ВСЕ данные из таблицы user Выведет только 2 поля user и password из таблицы user |