Писал для товарища небольшой faq, у него всё получилось.
Установка eAthena-SQL
1. Ставим MySQL-сервер. Я юзаю версию
5.0.18 вроде... любая 5.х должна подойти. Все настройки по дефолту.
2. Качаем сервер:
http://www.sacredangelro.com/svn/eAthen ... Win32].rar (нативный, cygwin-версия тормозная). Распаковываем сервер в корень диска (получаем папку типа
C:\eAthena-SQL-12618[Stable][Win32])
3.
Опционально меняем названия баз данных (для пущей безопасности).
Т.е. идём в папку
conf, правим по вкусу:
Файл
inter_athena.conf:
Код: Выделить всё
login_server_id: ragnarok
login_server_pw: ragnarok
login_server_db: ragnarok
char_server_id: ragnarok
char_server_pw: ragnarok
char_server_db: ragnarok
map_server_id: ragnarok
map_server_pw: ragnarok
map_server_db: ragnarok
log_db_id: ragnarok
log_db_pw: ragnarok
log_db: log
4. Создаём бат-файл
C:\sql_install.bat следующего содержания:
Код: Выделить всё
@echo off
REM ----- eAthena SQL installer by uStick [DrSatan] -----
set pwd="%cd%"
cls
set mysqlBinPath=%ProgramFiles%\MySQL\MySQL Server 5.0\bin
set mysqlPath=%mysqlBinPath%\mysql.exe
set mysqldumpPath=%mysqlBinPath%\mysqldump.exe
set sqlfilesPath=C:\eAthena-SQL-12618[Stable][Win32]\sql-files
set dbuser=ragnarok
set dbpass=ragnarok
set dbgame=ragnarok
set dblog=log
set dbadmin=root
set dbadmpass=qwerasdf
echo Удаляем старые базы
set tmp="%mysqlPath%" -h localhost -u %dbadmin% -p%dbadmpass%
set cmdline=%tmp% -e "DROP DATABASE %dbgame%"
%cmdline%
set cmdline=%tmp% -e "DROP DATABASE %dblog%"
%cmdline%
echo Создаём новые базы
set cmdline=%tmp% -e "CREATE DATABASE %dbgame%"
%cmdline%
if not %ERRORLEVEL% == 0 goto fuck
set cmdline=%tmp% -e "CREATE DATABASE %dblog%"
%cmdline%
if not %ERRORLEVEL% == 0 goto fuck
echo Даём права пользоавтелю %dbuser%
set cmdline=%tmp% -e "GRANT ALL PRIVILEGES ON %dbgame%.* TO '%dbuser%'@'localhost' IDENTIFIED BY '%dbpass%' WITH GRANT OPTION;"
%cmdline%
if not %ERRORLEVEL% == 0 goto fuck
set cmdline=%tmp% -e "GRANT ALL PRIVILEGES ON %dblog%.* TO '%dbuser%'@'localhost' IDENTIFIED BY '%dbpass%' WITH GRANT OPTION;"
%cmdline%
if not %ERRORLEVEL% == 0 goto fuck
set ggg=0
echo Импортируем таблицы
cd "%sqlfilesPath%"
for %%i in (
logs.sql
) do call :import %%i %dblog%
for %%i in (
main.sql
item_db.sql
item_db2.sql
mob_db.sql
mob_db2.sql
) do call :import %%i %dbgame%
echo Импорт обновлений
set ggg=1
for %%i in (upgrade*log.sql) do call :import %%i %dblog%
for %%i in (upgrade*.sql) do call :import %%i %dbgame%
goto ok
:import
set cmdline=%tmp% -D %2 ^< %1 2^>^> NUL
%cmdline%
if %ggg%==0 if not %ERRORLEVEL% == 0 goto fuck
del %1
goto :eof
:fuck
echo FUCK =(
:ok
pause
внимательно смотрим в него. меняем
mysqlBinPath, если mysql не тот, который я рекомендовал или стоит в другом месте.
меняем
sqlfilesPath, если распаковали сервер в другое место.
dbuser &
dbpass - те, которые указали (или оставили дефолтными) в
inter_athena.conf.
dbgame &
dblog - названия баз данных, из того же файла.
dbadmin &
dbadmpass - логин и пароль
админа mysql-сервера, указывали при установке.
в идеале, менять ничего не надо, кроме пароля админа.
запускаем батник, смотрим (да, он удалит почти все файлы .sql из указанной папки). если он скажет "FUCK =(", то нифига не вышло
у меня поставилось с 1го раза. вернее с 10го, но я его по ходу установки и писал ))
Запускаем logserv-sql.bat, charserv-sql.bat, mapserv-sql.bat (по очереди, ждём, пока каждый до конца загрузицо). Смотрим, чтобы не было ошибок.
Далее запускаем клиент, регимся. Регистрация в самом клиенте проходит так: пишем логин login_F или login_M (девочка/мальчик) и свой пасс. При последующих входах - просто login и пасс.
После этого, чтобы сделать свой аккаунт админским - идём в phpMyAdmin (если стоит), там в базе ragnarok в таблице login у своего акка меняем account_id на 2000000.
Либо, если нет phpMyAdmin`а, делаем Пуск - выполнить - cmd, там пишем:
mysql -u root -p
у нас спросят пароль. вводим тот, который указали при установке mysql.
далее выполняем:
use ragnarok;
UPDATE `login` SET `account_id`=2000000 WHERE `userid`='admin';
(admin меняем на название нашего аккаунта, кавычки ставить правильные! а лучше - скопировать отсюда)
Вроде всё.